网络协议
网络协议为计算机网络中进行 数据交换 而建立的 规则、标准 或 约定
比如下图中 不同国家的人 开会,如果都 说自己的母语,对方都听不懂,为了解决这一问题,开会前先制定好 沟通协议,都说 英语,就能够正常交流了
产生背景
在计算机早期,不同的硬件、不同的操作系统之间,要实现网络通信,有很多困难,为了解决这一问题,提出TCP/IP协议,支持TCP/IP协议的设备,就可以联网,与其他设备进行通信。
TCP/IP协议族
TCP/IP协议 不是 TCP 和 IP 这两个协议的合称,而是包含了 很多协议,如:TCP、UDP、IP、ARP等,所以称之为 协议族
TCP/IP协议分层
由于计算机和网络的 复杂性,TCP/IP协议参考了 OSI七层模型,根据实际情况划分 四层
每一层都依赖下一层的网络功能
注意:
我们平时使用的软件,如QQ、浏览器等,都是应用层的软件,协议一般都是 自定义协议,且都依赖下层的协议,如:TCP、UDP、IP等
OSI模型与TCP/IP协议
第五层:应用层
为应用程序提供网络服务。应用层的协议是应用程序之间的规则,可以自定义
如:web服务器和浏览器之间采用http协议、ftp服务器和客户端之间采用ftp协议等。
我们自己开发程序,也可以自定义协议
第四层:传输层(运输层)
实现 不同计算机进程间 通信。其功能包括:
- 作为发送端,接收 应用层 的数据,将数据封装成 数据段 (TCP或UDP),并交给 网络层。称之为 多路复用(multiplexing)
- 作为接收端,接收 网络层 的数据,根据 端口号 将数据交给 应用程序。称之为 多路分解(demultiplexing)
这一层有两个重要协议: TCP 和 UDP
第三层:网络层
功能:
传输层的 数据段 ,在网络层中,都要封装成 IP数据包,再交给链路层
- 路由
当电脑A中的QQ向电脑B中的QQ发送数据时,需要跨过多个路由器,有的路由器网络可能会不稳定,就需要时刻都对于每一个数据包给定 最佳的路线 - 寻址
ARP地址解析过程,通过A的IP找到A的网卡MAC地址
特点:
- 不可靠,数据包到达的顺序和发送的顺序 可能不同 ,需要上层对数据包进行排序
- 无连接;(事先不建立会话);
从 IP报头 可知,这一层需要 IP地址
IP协议
互联网协议地址(英语:Internet Protocol Address,又译为网际协议地址),缩写为IP地址(英语:IP Address)
IP地址,相当于给电脑分配了门牌号,没有门牌号收不到快递
常见的IP地址分为IPv4与IPv6两大类
注意:
当传输层发送的数据长度大于MTU时,网络层将对数据进行分片
IP数据包格式
http://www.malaoshi.top/show_1EF2boBn83hd.html
网络设备
路由器、三层交换机属于这一层
第二层:链路层
功能如下:
作为发送端,接收 网络层 的数据包 封装成 数据帧,并交给 物理层
作为接收端,接收 物理层 的 bit流 并封装成 数据帧,并交给 网络层
从 数据帧 可知,这一层用到 MAC地址
数据帧格式
http://www.malaoshi.top/show_1EF2y69WXq6Y.html
网络设备
二层交换机就属于这一层
MAC地址见
mac地址是网卡的物理地址,不可更改
https://baike.baidu.com/item/MAC%E5%9C%B0%E5%9D%80/1254181?fr=aladdin
MTU
参加http://www.malaoshi.top/show_1EF2VJuYjPgR.html
第一层:物理层
位于链路层之下,也是最底层,数据单位是比特
功能:利用传输介质为数据链路层提供物理连接,实现比特流的透明传输
介质包括:各种线缆、光纤、无线信道等
感谢:
https://blog.csdn.net/hanzhen7541/article/details/79030748
https://blog.csdn.net/qq_31759205/article/details/80622594
https://blog.csdn.net/hanzhen7541/article/details/79071615



