网络编程——OSI(open system interconnect)七层参考模型,famous网络互联模型
一、各层主要功能
第一层:物理层
最终信号的传输介质,传输比特流,该层的协议规定了传输介质(网线、集线器、双绞线等)的物理标准,比如电缆针脚。
主要协议:IEEE
主要设备:中继器、集线器
双绞线得传输距离是100m,超过100m时信号会衰减,这时再两台电脑之间加一个中继器,可以让200m间得电脑进行数据传输。
第二层:数据链路层
相邻主机间的通信。通过MAC地址进行主机之间数据的传输,传输的帧。物理层提供服务的基础上将来自网络层的数据可靠的传输到相邻主机的网络层。
主要功能:将数据组合成数据块(帧,数据链路层的传送单位);控制帧在物理信道上的传输,例如传输差错控制,调节发送速率从而与接收方相匹配;传输通道的建立、维持和释放。
主要协议:FDDI(光通信协议), Ethernet(以太网协议), PPP(点到点协议)
主要设备:网卡、网桥、交换机
网桥:连接两个局域网得存储/转发设备。
工作过程:
1、电脑1.1发送数据到集线器;
2、集线器发送给电脑1.2和网桥;
3、网桥学到了电脑1.1的MAC地址;
4、网桥把数据包传输到下一个集线器;
5、集线器把包发给电脑1.3和电脑1.4;
6、电脑1.3和电脑1.4会扔掉不属于它们的包;
7、电脑1.2接收到到会返回数据给集线器,集线器发送给网桥,网桥就学到了1.2得MAC地址;
8、由于网桥已经学到了电脑1.1得地址,所以对于电脑1.2返回得数据会通过集线器,由网桥直接发送给电脑1.1,而不会发送给电脑1.3和电脑1.4;
交换机:工作过程与网桥类似
交换机的分类:
1、传统二层交换机
2、VLAN交换机,由网管功能
3、三层交换机,VLAN交换机+路由器,属于网路层得设备,而不是数据链路层的设备
网桥与交换机的区别:
1、网桥属于软件转发;
2、交换机属于硬件转发;
第三层:网络层
远程主机间的通信,通过IP地址寻址建立两个结点之间的连接。两个重要功能:IP选址和分段。定义了能够识别所有结点的逻辑地址,定义了如何建一个报分解成更小的包的分段方法。
主要设备:路由器
根据路由器中本身具备得丰富得协议来翻译不同网段之间的通信,从而实现不同网段和网络。
主要协议:IP(寻址,分段),ICMP(网络故障诊断), ARP/RARP: 地址解析/反向地址解析协议
第四层:传输层
负责进程与进程之间的通信,通信可靠性。分割与重组数据--》按端口号寻址--》连接管理--》差错控制,流量控制
差错控制:一种保证接收得数据完整、准确得方法。发送端调制解调器对即将发送得数据执行一次数据运算,并将运算结果连同数据一起,接收数据得调制解调器对他接收到得数据以同样得方法进行运算,比较两个结果,若不一样则说明数据在传输过程中丢失,接收数据得调制解调器就申请发送端重新发送数据。
流量控制:用于防止在端口阻塞的情况下丢帧,当发送和接收方缓存区出现数据溢出时将阻塞信号发送回原地址实现。
主要协议:TCP/UDP
TCP:传输控制协议(解决数据是否完整传输,是否正确)
UDP:用户数据报协议(在数据包传送到IP地址得基础上还可以进一步传输到具体得某一个端口)
第五层:会话层
建立到应用的连接,选择合适的传输服务。不同设备中应用程序之间的请求和响应组成。
第六层:表示层
提供应用层数据的编码、转换(例如数据压缩、加密)功能。确保一个系统的应用层发送的数据能被另一个系统的应用层识别,
第七层:应用层
为用户提供常见得应用程序,直接面向用户。例如电子邮件、浏览器等网络服务都是应用层程序。
主要协议:HTTP(超文本传输协议),HTTPS,FTP(上传及下载),POP3/SMTP(邮箱),TELNET(远程登录)
HTTP:包括url地址、域名、原地址,发送得数据方法(get、post),路蓝旗信息等
二、数据封装、解封过程
封装:
应用层:发送数据---------表示层:数据格式转换,加密,压缩等----------会话层:建立连接-----------传输层:差错校验,流量控制,TCP/UDP传输,添加端口号信息(源端口,目标端口)+数据------------网络层:分组,数据包(IP地址+数据)--------数据链路层:帧(帧头(帧头包含Mac地址)+帧数据)------------物理层:比特流(0,1)
解封装:
物理层:比特流(0,1)---------数据链路层:帧(帧头(帧头包含Mac地址)+帧数据)--------网络层:分组,数据包(IP地址+数据)-------传输层:差错校验,流量控制等;UDP/TCP(传送和接收端口信息+数据)---------会话层:建立连接-----------表示层:数据格式转换,解密,解压缩等-----------应用层:接收的数据
参考文档:百度搜索、https://www.cnblogs.com/qishui/p/5428938.html、https://www.cnblogs.com/evablogs/p/6709707.html