进入通信领域后,发现网络知识是必备技能,作为小白仍在不断学习fighting,就把目前学习的内容整理在案,与大家共享讨论。 在讲封装之前,必然要讲的是从源到目的地要走的5层协议:应用层、运输层、网络层、链路层、物理层,怎么理解这5层协议,在自顶向下方法里面有一个很好的比喻,我们乘飞机的流程是这样的,买票—行李托运—登机—起飞—飞行—着陆—离机—行李认领—票务投诉(如果需要),在流程中,这一步都为下一步提供了服务。我们从流程两端看起,是票务层、行李层、登离机层、起飞着陆层以及飞行层。 相应的,应用层、运输层、网络层、链路层、物理层,每一层都为自己的下一层提供了服务,然而每一层都要有自己的规范,就像在票务层,我们买票的时候到底是去柜台还是可以网上购买,支付的时候是否可以用信用卡等等。每一层的规范我们称之为协议栈。 应用层,常见的协议有,HTTP(Web请求)、SMTP(电子邮件)、FTP(两系统文件传输),应用层协议分布在端系统中,一个端系统的应用程序使用的协议与另一个端系统中的应用程序交换信息分组,这种信息分组成为报文。 运输层,常见的协议有,TCP和UDP,运输层在应用程序端点之间传送应用层报文,运输层的分组为报文段。 网络层,常见的协议有,IP,负责将数据报的网络层分组从一台主机移动到另一台主机,网络层传输的是数据报。 链路层,常见的协议有以太网、WiFi、电缆接入的DOCSIS协议,,网络层将数据报下送给链路层,链路层沿着路径将数据报传递给下一个节点,在该节点链路层将数据报传输给网络层,链路传输的分组是帧。 物理层,是将链路层的帧中的一个个比特从一个节点移动到下一个节点。 介绍完了5层结构,封装的过程实际上就是5层结构上上下下运输的过程。应用层报文被发出,运输层收到报文并附加上信息,该首部将被接收端的运输层使用,应用层报文和运输层首保信息构成了运输层报文段,即应用层报文段被封装了,运输层向网络层传递该报文段,网络层增加了源和目的地址等网络层首部萌生了网络层数据报,该数据报接下来被传递给链路层,链路层增加链路层首部信息并生成链路层帧,因此在一个分组具有两种类型的字段,首部字段和有效载荷字段。