计算机网络常见协议与概念

Posted -YIN

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了计算机网络常见协议与概念相关的知识,希望对你有一定的参考价值。

常见协议与概念

分层模型

OSI模型分为7层,自下而上为,物理层,数据链路层,网络层,传输层,会话层,表示层,应用层(物数网传会表应)


数据链路层完成帧同步,差错控制,流量管理,链路管理
网络层 ip地址管理,路由选择
传输层管理两个节点之间的数据传输
会话层负责管理传输层以下的分层
表示层一项重要的工作就是网络标准数据格式的转换

交换机在数据链路层,路由器在网络层


在网络分层中,自下而上,第N层为N+1层提供服务,N-1层将从N层接的信息增加一个头部

不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在网络层叫做数据报 (datagram),在链路层叫做帧(frame)

各层对应协议

常见协议

网络层

IP协议为网际协议,在网络层工作
IP协议特征:无连接、不可靠、无状态

ICMP协议为网际控制报文协议,它是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息,所以是通过IP协议来进行传输

ARP协议为地址解析协议,在网络层工作

传输层

TCP 协议为传输控制协议,在传输层工作

UDP 协议为用户数据报协议,在传输层工作

OSPF 为开放的最短路径优先协议,在传输层工作

安全协议:

IETF后来在标准化SSL协议时,将其改为了TLS。很多人会混用SSL与TLS,但严格来说它们指代的协议版本不同(SSL3.0的升级版才是TLS1.0)

应用层

常见协议默认端口号

http方法:
http1.0,三种:post,get,head
http1.1,八种:post,get,head,options,put,delete,trace,connect

TCP应用层协议:

POP3:邮局传输协议版本3
SMTP: 简单邮件传输协议(端口:25)
TELNET: 远程登陆协议
HTTP: 超文本传输协议(端口:80)
HTTPS: 超文本传输安全协议
FTP: 文件传输协议(端口:21/20)

tp端口号20和21的区别是:一个是数据端口,一个是控制端口,控制端口一般为21,而数据端口不一定是20,这和FTP的应用模式有关,如果是主动模式,应该为20,如果为被动模式,由服务器端和客户端协商而定


UDP应用层协议:

DNS: 域名解析协议(端口号:53)
NFS: 网络文件系统
TFTP: 简单文件传输协议
DHCP: 动态主机配置协议
BOOTP: 启动协议(用于无盘设备启动)

数据链路层概念

MAC地址 48位,6 Bytes

以太网的链路层对数据帧的长度会有一个限制,其最大值默认是1500字节,链路层的这个特性称为MTU,即最大传输单元

MTU

Maximum Transmission Unit,最大传输单元,指的是数据链路层的最大payload,由硬件网卡设置MTU,是一个硬性限制

MTU是链路层对网络层的限制,以太网链路的MTU默认是1500byte,意思是以太网数据链路层的有效数据payload的最大字节数不能超过1500

为什么要有MTU
以太网最初对报文长度没有限制,网络层最大可以接收65535个字节,但是以太网对于长报文无法可靠地传输,而且丢失后重传也会占用大量的网络资源,而将报文限制在一定的长度,以太网可以将报文大概率传输到目的地,于是就有了MTU

例子:
以太网的MTU值是1500 bytes,假设发送者的协议高层向IP层发送了长度为3008 bytes的数据报文,则该报文在添加20 bytes的IP包头后IP包的总长度是 3028 bytes,因为3028 > 1500,所以该数据报文将被分片,分片过程如下:

  1. 首先计算最大的IP包中IP净荷的长度 =MTU-IP包头长度=1500-20= 1480 bytes。

  2. 然后把3028 bytes按照1480 bytes的长度分片,将要分为3片,3028= 1480+1480+68。

  3. 最后发送者将为3个分片分别添加IP包头,组成3个IP包后再发送,3个IP包的长度分别为1500 bytes、1500 bytes和 88 bytes。




图片来自《计算机网络第七版》——谢希仁

以上是关于计算机网络常见协议与概念的主要内容,如果未能解决你的问题,请参考以下文章

HTTP面试-基本概念

接口相关概念总结

网络编程--04 HTTP协议

HTTP常见返回码

HTTP协议

Linux:网络基础(协议数据的封装与分用)