计算机网络七层的理解
一、主机A到主机B数据的传输过程
A主机:
1、数据的产生肯定是一个应用层的程序产生的,如IE浏览器等等。这些程序在应用层需要有不同的接口,IE是浏览网页的使用HTTP协议,那么HTTP应用层为浏览网页的软件留下的网络接口。
2、应用层处理好数据就交给运输层。
---首先A要知道B在哪里:使用DNS解析出B的IP地址
---交给运输层的数据:源端口,目的端口,原IP,目的IP,数据部分
3、运输层给数据加上首部(TCP首部/UDP首部)构成TCP/UDP报文,交给网络层(IP层)。
---UDP报文:无连接,没有拥塞控制,不可靠,首部开销小,支持一对一、一对多、多对一、多对多,效率快
---TCP报文:面向连接:TCP := {socket1,socket2} socket = (IP地址:端口号),三次握手,四次挥手
可靠传输:等待停止协议,连续ARQ(自动传输重传)协议,滑动窗口协议
流量控制:通过滑动窗口实现
拥塞控制:慢开始,拥塞避免,快恢复
4、网络层给报文加上IP首部构成IP数据报交给数据链路层。
---IP层的主要目的是转发分组:路由器,路由表
地址解析协议ARP(通过IP地址,找到对应的硬件地址)
5、数据链路层给IP数据报加上首部和尾部构成MAC帧,交给物理层。
---封装成帧、透明传输、差错检测
6、物理层将数据链路层的数据转换成电流传输的物理线路。
B主机
7、通过物理线路传递的B主机后,B主机会将电信号转换成数据链路层的数据MAC帧。
8、数据链路层给MAC帧报去掉首部和尾部构成IP数据报,交给IP层。
9、IP层去掉首部构成报文交给运输层。
10、运输层去掉首部,根据端口号交给应用层中对应的应用程序。