㈠ 数据包是如何在网络中传输的
我们电脑上的数据,是如何“走”到远端的另一台电脑的呢?这是个最基础的问题,可能很多人回答不上来,尽管我们每天都在使用网络。这里我们以一个最简单的“ping”命令,来解释一个数据包“旅程”。
假设:我的电脑A,向远在外地的朋友电脑B传输数据,最简单的就是“ping”一下,看看这个家伙的那一端网络通不通。A与B之间只有一台路由器。(路由器可能放在学校,社区或者电信机房,无所谓,基本原理是一样的)
具体过程如下------
1.“ping”命令所产生的数据包,我们归类为ICMP协议。说白了就是向目的地发送一个数据包,然后等待回应,如果回应正常则目的地的网络就是通的。当我们输入了“ping”命令之后,我们的机器(电脑A)就生成了一个包含ICMP协议域的数据包,姑且称之为“小德”吧~~~~
2.“小德”已经将ICMP协议打包到数据段里了,可是还不能发送,因为一个数据要想向外面传送,还得经过“有关部门”的批准------IP协议。IP要将你的“写信人地址”和“收信人地址”写到数据段上面,即:将数据的源IP地址和目的IP地址分别打包在“小德”的头部和尾部,这样一来,大家才知道你的数据是要送到哪里。
3.准备工作还没有完。接下来还有部门要审核------ARP。ARP属于数据链路层协议,主要负责把IP地址对应到硬件地址。直接说吧,都怪交换机太“傻”,不能根据IP地址直接找到相应的计算机,只能根据硬件地址来找。于是,交换机就经常保留一张IP地址与硬件地址的对应表以便其查找目的地。而ARP就是用来生成这张表的。比如:当“小德”被送到ARP手里之后,ARP就要在表里面查找,看看“小德”的IP地址与交换机的哪个端口对应,然后转发过去。如果没找到,则发一个广播给所有其他的交换机端口,问这是谁的IP地址,如果有人回答,就转发给它。
4.经过一番折腾,“小德”终于要走出这个倒霉的局域网了。可在此之前,它们还没忘给“小德”屁股后面盖个“戳”,说是什么CRC校验值,怕“小德”在旅行途中缺胳膊少腿,还得麻烦它们重新发送。。。。。我靠~~~~注:很多人弄不清FCS和CRC。所谓的CRC是一种校验方法,用来确保数据在传输过程中不会丢包,损坏等等,FCS是数据包(准确的说是frame)里的一个区域,用来存放CRC的计算结果的。到了目的地之后,目的计算机要检查FCS里的CRC值,如果与原来的相同,则说明数据在途中没有损坏。
5.在走出去之前,那些家伙最后折磨了一次“小德”------把小德身上众多的0和1,弄成了什么“高电压”“低电压”,在双绞线上传送了出去。晕~~出趟门就这么麻烦吗?
6.坐着双绞线旅游,爽!可当看到很多人坐着同轴电缆,还有坐光纤的时候,小德又感觉不是那么爽了。就在这时,来到了旅途的中转站------路由器。这地方可是高级场所,人家直接查看IP地址!剩下的一概不管,交给下面的人去做。够牛吧?路由器的内部也有一张表,叫做路由表,里面标识着哪一个网络的IP对应着路由器的哪一个端口。这个表也不是天生就有的,而是靠路由器之间互相“学习”之后生成的,当然也可以由管理员手工设定。这个“学习”的过程是依靠路由协议来完成的,比如RIP,EIGRP,OSPF等等。
7.当路由器查看了“小德”的IP地址以后,根据路由表知道了小德要去的网络,接着就把小德转到了相应的端口了。至此,路由器的主要工作完成,下面又是打包,封装成frame,转换成电压信号等一系列“折腾”的活,就由数据链路层和物理层的模块去干吧。
8.小德从路由器的出口出来,便来到了目的地----电脑B----所属的网络的默认网关。默认网关可以是路由器的一个端口,也可以是局域网里的各种服务器。不管怎样,下面的过程还是一样的:到交换机里的ARP表查询“小德”的IP地址,看看属于哪个局域网段或端口,然后就转发到B了。
9.进了B的网卡之后,还要层层“剥皮”,基本上和从A出来的程序是一样的------电脑B先校验一下CRC值,看看数据是否完整;然后检查一下frame的封装,看到是IP协议之后,就把“小德”交给IP“部门”了;IP协议一看目的地址,正确,再看看应用协议,是ICMP。于是知道了该怎么做了------产生一个回应数据包,(可以命名为“回应小德”),并准备以同样的顺序向远端的A发送。。至于刚刚收到的那个数据包就丢弃了。
10.“回应小德”这个数据包又开始了上述同样的循环,只不过这次发送者是B而接收者是A了。
以上是一个最简单的路由过程,任何复杂的网络都是在次基础之上实现的。
㈡ 用交换机接起来一个局域网(不连外网),计算机之间的数据是以包的形式传输的吗但是包不是网络层才有吗
给你举个例子,你从某宝买件商品,商品的内容包装在商家提供的包装盒内。
之后这件商品给到物流,物流会将这个商家包装盒装在物流包装盒内,然后运送。
交换机也一样。
㈢ 简要说明TCP/IP参考模型五个层次的名称,各层的传输格式和使用的设备是什么
TCP/IP参考模型是ARPANET及其后继的因特网使用的参考模型。其将协议分为:网络接入层、网际互连层、传输层以及应用层。
1.应用层:对应OSI参考模型的上层,为用户提供所需的各种服务,如FTP,Telnet,DNS,SMTP等。
2.传输层:传输层对应于OSI参考模型的传输层,为应用层实体提供端到端通信功能,确保数据包的顺序传输和数据的完整性。该层定义了两个主要协议:传输控制协议(TCP)和用户数据报协议(UDP)。
TCP协议提供可靠的,面向连接的数据传输服务;而UDP协议提供不可靠的无连接数据传输服务。
3.互联网互联层:互联网互联层对应OSI参考模型的网络层,主要解决从主机到主机的通信问题。它包含通过网络逻辑传输的协议设计数据包。重点是重新给主机一个IP地址来完成主机的寻址,它还负责在各种网络中路由数据包。
该层有三个主要协议:Internet协议(IP),Internet组管理协议(IGMP)和Internet控制消息协议(ICMP)。 IP协议是Internetworking层中最重要的协议。它提供可靠的无连接数据报传送服务。
4.网络接入层:网络接入层(即主机 - 网络层)对应于OSI参考模型中的物理层和数据链路层。它负责监视主机和网络之间的数据交换。
实际上,TCP / IP本身并没有定义该层的协议,但参与互连的每个网络都使用自己的物理层和数据链路层协议,然后与TCP / IP的网络接入层连接。地址解析协议(ARP)在此层(OSI参考模型的数据链路层)上工作。
(3)没有链路层如何传输数据扩展阅读:
OSI参考模型与TCP/IP参考模型的异同点:
1. OSI参考模型和TCP / IP参考模型都使用分层结构,但OSI使用的七层模型和TCP / IP是四层结构。
2. TCP / IP参考模型的网络接口层实际上没有真正的定义,但是是概念性描述。 OSI参考模型不仅分为两层,而且每层的功能都非常详细。即使在数据链路层,也分离媒体访问子层以解决局域网中共享媒体的问题。
3. TCP / IP的网络互连层等同于OSI参考模型的网络层中的无连接网络服务。
4. OSI参考模型基本上类似于TCP / IP参考模型的传输层功能。它负责为用户提供真正的端到端通信服务,并且还从高层屏蔽底层网络的实现细节。
不同之处在于TCP / IP参考模型的传输层基于网络互连层,网络互连层仅提供无连接网络服务,因此面向连接的功能完全在TCP协议中实现,当然, TCP / IP的传输层还提供UDP等无连接服务;
相反,OSI参考模型的传输层基于网络层,它提供面向连接和无连接的服务,但传输层仅提供面向连接的服务。
5.在TCP / IP参考模型中,没有会话层和表示层。事实证明,这两层的功能可以完全包含在应用层中。
6. OSI参考模型具有高抽象能力,适用于描述各种网络。 TCP / IP是首先开发TCP / IP模型的协议。
7. OSI参考模型的概念明显不同,但它过于复杂;虽然TCP / IP参考模型在服务,接口和协议之间的区别中不清楚,但功能描述和实现细节是混合的。
8. TCP / IP参考模型的网络接口层不是真实层; OSI参考模型的缺点是层数太多,划分意义不大但增加了复杂性。
9.尽管OSI参考模型是乐观的,但由于缺乏时间安排,该技术尚不成熟且难以实施;相反,虽然TCP / IP参考模型有许多令人不满意的地方,但它非常成功。
㈣ 数据链路层的主要任务是什么网络层的主要功能有哪些
1、数据链路层在物理层提供的服务的基础上向网络层提供服务,其最基本的服务是将源自网络层来的数据可靠地传输到相邻节点的目标机网络层。
为达到这一目的,数据链路必须具备一系列相应的功能,主要有:
(1)如何将数据组合成数据块,在数据链路层中称这种数据块为帧(frame),帧是数据链路层的传送单位;
(2)如何控制帧在物理信道上的传输,包括如何处理传输差错,如何调节发送速率以使与接收方相匹配;
(3)以及在两个网络实体之间提供数据链路通路的建立、维持和释放的管理。
2、网络层的目的是实现两个端系统之间的数据透明传送,具体功能包括寻址和路由选择、连接的建立、保持和终止等。它提供的服务使传输层不需要了解网络中的数据传输和交换技术。如果您想用尽量少的词来记住网络层,那就是“路径选择、路由及逻辑寻址”。
(4)没有链路层如何传输数据扩展阅读
OSI模型有7层结构,每层都可以有几个子层。 OSI的7层从上到下分别是 7应用层6表示层5 会话层 4传输层3网络层2数据链路层1物理层
1、应用层
与其它计算机进行通讯的一个应用,它是对应应用程序的通信服务的。例如,一个没有通信功能的字处理程序就不能执行通信的代码,从事字处理工作的程序员也不关心OSI的第7层。但是,如果添加了一个传输文件的选项,那么字处理器的程序员就需要实现OSI的第7层。
2、表示层
这一层的主要功能是定义数据格式及加密。例如,FTP允许你选择以二进制或ASCII格式传输。如果选择二进制,那么发送方和接收方不改变文件的内容。
如果选择ASCII格式,发送方将把文本从发送方的字符集转换成标准的ASCII后发送数据。在接收方将标准的ASCII转换成接收方计算机的字符集。示例:加密,ASCII等。
3、会话层
它定义了如何开始、控制和结束一个会话,包括对多个双向消息的控制和管理,以便在只完成连续消息的一部分时可以通知应用,从而使表示层看到的数据是连续的,在某些情况下,如果表示层收到了所有的数据,则用数据代表表示层。示例:RPC,SQL等。
4、传输层
这层的功能包括是否选择差错恢复协议还是无差错恢复协议,及在同一主机上对不同应用的数据流的输入进行复用,还包括对收到的顺序不对的数据包的重新排序功能。示例:TCP,UDP,SPX。
5、网络层
这层对端到端的包传输进行定义,它定义了能够标识所有结点的逻辑地址,还定义了路由实现的方式和学习的方式。为了适应最大传输单元长度小于包长度的传输介质,网络层还定义了如何将一个包分解成更小的包的分段方法。示例:IP,IPX等。
6、数据链路层
它定义了在单个链路上如何传输数据。这些协议与被讨论的各种介质有关。示例:ATM,FDDI等。
数据链路层:是为了提供功能上和规程上的方法,以便建立、维护和释放网络实体间的数据链路 。
物理链路(物理线路):是由传输介质与设备组成的。原始的物理传输线路是指没有采用高层差错控制的基本的物理传输介质与设备。
数据链路(逻辑线路):在一条物理线路之上,通过一些规程或协议来控制这些数据的传输,以保证被传输数据的正确性。实现这些规程或协议的硬件和软件加到物理线路,这样就构成了数据链路。从数据发送点到数据接收点(点到点 point to point)所经过的传输途径。
当采用复用技术时,一条物理链路上可以有多条数据链路。
7、物理层
OSI的物理层规范是有关传输介质的特性标准,这些规范通常也参考了其他组织制定的标准。连接头、帧、帧的使用、电流、编码及光调制等都属于各种物理层规范中的内容。物理层常用多个规范完成对所有细节的定义。示例:Rj45,802.3等。
参考资料来源:网络—网络层
参考资料来源:网络—数据链路层