Linux运维 day 05
一,tcp与udp协议
tcp可靠协议:
通信之前先建立双向通路,每发一个数据包都需要对方回复确认信息ack,之后才会把数据清除掉。如果对方没有确认,客户端会隔一段时间重新发送数据包,重复多次后如果服务端还是没有回复,会当服务端宕机了。
ps:tcp协议的程序需要先启动服务端
udp不可靠协议:
通信之前不需要建立通路,每发送一个数据包不需要对方回复确认信息ask,会直接把数据清除掉。
ps:udp协议的程序无需先启动服务端
udp协议的传输效率大于tcp协议,但是tcp协议比udp协议可靠。
为什么tcp协议的建连接只需要三次握手而断链接需要四次?
因为键连接时客户端与服务端之间并没有数据进行传输,双向通道可同时进行连接。
而断链接时可能服务端还有剩余的数据没有发送完,只能先断开客户端对他的连接,等到数据传输完成后再断开服务端跟客户端的连接。
二、操作系统端口
ip+端口=全世界唯一的一个应用程序
应用程序--》操作系统端口--》网卡--》互联网--》目标网卡--》目标操作系统端口--》目标应用程序
应用程序用操作系统分配的端口号通过网络就可以找到对方服务器上的同端口号的应用程序。
端口号一般有65535个,前1024是用于系统应用,其他的都是给用户应用程序。
三、socket套接字
socket是对传输层及以下的封装,应用程序产生的数据包想要往外传输,直接传给socket就行了,socket会完成对后续的封装。
应用层
========》socket《=======
传输层
网络层
数据链层
物理层
四、cs结构与bs结构
client:一个软件(客户端)对应一个服务端
browser:通过浏览器一个软件就可以访问所有的服务端。
五、dhcp与DNS
dhcp(服务端口67):
当计算机开机时dhcpklant负责向dhcp服务端发请求配置主机动态IP地址。
域名解析:
因为人觉得ip地址比较难记,所以用域名代替。比如 www.baidu.com.(默认端口80)
.:根域名
.com:顶级域名 com用于商业组织,gow用于政府部门,edu用于教育部门
baidu:二级域名
www.:二级域名下的主机名
DNS(服务端口53):
dns默认集成再路由器上。
dns可以把域名转化成ip地址
浏览器DNS缓存=》本地DNS缓存=》本地计算机hosts文件=》运营商(ISP)DNS缓存=》递归=》迭代搜索
hosts文件可充当本地dns使用,而且优先等级大于本地dns。
递归:
别人知道去哪问而且还帮你去问,一层层传递。
迭代:
别人只告诉你下一个应该去哪问然后让你自己问
计算机=》根DNS服务器=》顶级域DNS服务器=》
计算机=》顶级域DNS服务器=》二级域DNS服务器
计算机=》二级域DNS服务器
根DNS服务器(全球13台):
属于集群特性
只存放顶级域对应的IP地址
9台美国,2台欧州,1台日本,挪威1台
顶级域DNS服务器:
属于集群特性
存放二级域对应的ip地址
二级域DNS服务器:
存放www.对应的计算机IP地址
千兆网卡在以太网协议中最大只能传输1500个字节,如果数据大于1500就分批次发,每次都要加上以太网头,然后服务端会根据序号将数据拼在一起。
tcp协议与ip协议的头大小位20Bytes
万兆网卡最大能传9k(Bytes)