首先,数据在网络中传输,分为两种,一种是统一网段内的数据传输,另一种当然就是不同网段之间的数据传输。
假设两台主机A、B想要通信,A如果想要发送数据给B,必须先将B的IP地址与自己的子网掩码进行与运算,判断与自己(A)是否在同一网段中。
1、同一网段中的数据传输过程
应用层 -> 数据、源IP地址及端口、目的IP地址及端口
||
传输层 -> udp首部(源地址+端口、目的地址+端口) + 应用层数据部分(分组)
||
网络层 -> IP首部(源地址、目的地址) + 传输层数据(IP数据报)
||
通过ARP请求广播获得目的主机的Mac地址
数据链路层 -> 数据封装成帧+Mac地址(源Mac地址及目的Mac地址)+(加入首部SOH和尾部EOT)再透明传输(帧)
若数据中出现SOH或EOT这样的数据,则使用ECS进行转义
||
物理层 -> 将数据转换为比特流进行传输(比特流)
通过上述过程传输到目的主机后,再一层一层的剥掉首部,主机B则接收到了主机A 传输的数据。
2、不同网段的数据传输
应用层、传输层都与上述一致。
||
因主机B与主机A不在同一网段中,因此无法获取到主机B的mac地址,即无法直接将数据传输给主机B。因此,当主机A通过ARP协议广播请求主机B的Mac地址时,路由器C判断其与主机A不同同一网段中,则会返回自己的Mac地址,即获得主机A默认网关的Mac地址,然后将该Mac地址封装成帧发送到默认网关(也就是路由器上的一个端口)
注:网关的IP地址是具有路由功能的设备的IP地址,如路由器;
注:路由器在网络中起网关的作用;
数据链路层 -> 数据封装成帧+Mac地址(源Mac地址及路由器C的Mac地址)(加入首部SOH和尾部EOT)再透明传输
(若数据中出现SOH或EOT这样的数据,则使用ECS进行转义)
||
物理层 -> 将数据转换为比特流进行传输(比特流)
网关路由器接收到从物理层及数据链路层传上来的IP数据报后,先使用目的IP地址与本地路由表中所对应的子网掩码进行与运算,得出目的主机B其所在网络N,(下述过程为路由寻址的过程)
若网络N与此路由器直接相连,则直接交付给目的主机;
若未直接相连,则查看路由表中是否有目的地址的特定主机路由;
若有,则转发给路由表中所指明的下一跳路由器;
若无特定主机路由,则查看路由表中是否有到达网络N的路由;
若有,则转发给路由表中所指明的网络N的下一跳路由器;
若无,则转发给路由表中的默认路由;
一直重复,直到网络N与路由器直接相连,进行数据交付。(如图)
数据转发到下一跳路由器或转发到目的主机前仍需使用ARP协议请求该路由器或目的主机的Mac地址,封装成帧,向下传输;路由器或主机接收到数据后,再从物理层依次向上传输。
网络相关知识:
1、应用层:www.baidu.com com为顶级域名,baidu为二级域名,依次类推;
域名服务器:一个该服务器所能管辖的范围称为区。
一个区中的所有节点域名服务器必须是能够连通的;
区可能小于等于域,但不能大于域!
根域名服务器 -> 顶级域名服务器(org、com、edu) -> 权限域名服务器
2、运输层:多个应用进程和另一台主机的多个应用进行同时通信(复用和分用)
3、网络层
0.0.0.0 源地址可用,目的地址不可用;(本网络上的本主机)
255.255.255.255 源地址不可用,目的地址可用;(在本网络上进行广播)
路由器相关知识

从上图可以看出,整个的路由器结构可划分为两大部分:路由选择部分和分组转发部分。
路由选择部分也叫做控制部分,其核心构件是路由选择处理机。路由选择处理机的任务是根据所选定的路由选择协议构造出路由表,同时经常或定期地和相邻路由器交换路由信息而不断地更新和维护路由表。关于怎样根据路由选择协议构造和更新路由表,我们己在前文介绍了。
分组转发部分是本节所要讨论的问题,它由三部分组成:交换结构、一组输入端口和一组输出端口(请注意:这里的端口就是硬件接口)。下面分别讨论每一部分的组成。
交换结构((switching fabric)又称为交换组织,它的作用就是根据**转发表(forwarding table)**对分组进行处理,将某个输入端口进入的分组从一个合适的输出端口转发出去。交换结构本身就是一种网络,但这种网络完全包含在路由器之中,因此交换结构可看成是“在路由器中的网络”。注意,在讨论路由选择的原理时,往往不去区分转发表和路由表的区别,而可以笼统地都使用路由表这一名词。
在上图中,路由器的输入和输出端口里面都各有三个方框,用方框中的1, 2和3分别代表物理层、数据链路层和网络层的处理模块。物理层进行比特的接收。数据链路层则按照链路层协议接收传送分组的帧。在把帧的首部和尾部剥去后,分组就被送入网络层的处理模块。若接收到的分组是路由器之间交换路由信息的分组(如RIP或OSPF分组等),则把这种分组送交路由器的路由选择部分中的路由选择处理机。若接收到的是数据分组,则按照分组首部中的目的地址查找转发表,根据得出的结果,分组就经过交换结构到达合适的输出端口。一个路由器的输入端口和输出端口就做在路由器的线路接口卡上。
以上部分内容为复制,原文地址为https://me.csdn.net/zx48822821,向大家推荐该博主
部分内容为自己学习之后的总结,如有错误之处,还往大家多多包涵,指出后定当改正!