数据在网络7层中的传输过程

1. OSI网络分层參考模型

  网络协议设计者不应当设计一个单一、巨大的协议来为全部形式的通信规定完整的细节。而应把通信问题划分成多个小问题。然后为每一个小问题设计一个单独的协议。这样做使得每一个协议的设计、分析、时限和測试比較easy。协议划分的一个主要原则是确保目标系统有效且效率高。为了提高效率。每一个协议仅仅应该注意没有被其他协议处理过的那部分通信问题;为了主协议的实现更加有效,协议之间应该可以共享特定的数据结构;同一时候这些协议的组合应该能处理全部可能的硬件错误以及其他异常情况。

为了保证这些协议工作的协同性,应当将协议设计和开发成完整的、协作的协议系列(即协议族),而不是孤立地开发每一个协议。

  在网络历史的早期。国际标准化组织(ISO)和国际电报电话咨询委员会(CCITT)共同出版了开放系统互联的七层參考模型。一台计算机操作系统中的网络过程包含从应用请求(在协议栈的顶部)到网络介质(底部) ,OSI參考模型把功能分成七个分立的层次。图2.1表示了OSI分层模型。

  

               OSI七层參考模型

  OSI模型的七层分别进行下面的操作:

  第一层:物理层

  负责最后将信息编码成电流脉冲或其他信号用于网上传输。它由计算机和网络介质之间的实际界面组成,可定义电气信号、符号、线的状态和时钟要求、数据编码和传输数据用的连接器。如最经常使用的RS-232规范、10BASE-T的曼彻斯特编码以及RJ-45就属于第一层。全部比物理层高的层都通过事先定义好的接口而与它通话。如以太网的附属单元接口(AUI),一个DB-15连接器可被用来连接层一和层二。

  第二层:数据链路层

  通过物理网络链路提供可靠的传输数据。不同的数据链路层定义了不同的网络和协议特征,当中包含物理编址、网络拓扑结构、错误校验、帧序列以及流控。物理编址(相相应的是网络编址)定义了设备在数据链路层的编址方式;网络拓扑结构定义了设备的物理连接方式。如总线拓扑结构和环拓扑结构;错误校验向发生传输错误的上层协议告警;数据帧序列又一次整理并传输除序列以外的帧;流控可能延缓数据的传输。以使接收设备不会由于在某一时刻接收到超过其处理能力的信息流而崩溃。数据链路层实际上由两个独立的部分组成,介质存取控制(Media Access
Control,MAC)和逻辑链路控制层(Logical Link Control,LLC)。MAC描写叙述在共享介质环境中怎样进行站的调度、发生和接收数据。MAC确保信息跨链路的可靠传输。对传输数据进行同步。识别错误和控制数据的流向。

一般地讲。MAC仅仅在共享介质环境中才是重要的,仅仅有在共享介质环境中多个节点才干连接到同一传输介质上。IEEE MAC规则定义了地址,以标识数据链路层中的多个设备。逻辑链路控制子层管理单一网络链路上的设备间的通信,IEEE 802.2标准定义了LLC。LLC支持无连接服务和面向连接的服务。

在数据链路层的信息帧中定义了很多域。这些域使得多种高层协议能够共享一个物理数据链路。

  第三层:网络层

  负责在源和终点之间建立连接。它一般包含网络寻径,还可能包含流量控制、错误检查等。同样MAC标准的不同网段之间的传输数据一般仅仅涉及到数据链路层,而不同的MAC标准之间的传输数据都涉及到网络层。比如IP路由器工作在网络层,因而能够实现多种网络间的互联。

  第四层:传输层

  向高层提供可靠的端到端的网络数据流服务。传输层的功能一般包含流控、多路传输、虚电路管理及差错校验和恢复。流控管理设备之间的传输数据。确保传输设备不发送比接收设备处理能力大的数据;多路传输使得多个应用程序的数据能够传输到一个物理链路上;虚电路由传输层建立、维护和终止;差错校验包含为检測传输错误而建立的各种不同结构;而差错恢复包含所採取的行动(如请求数据重发),以便解决发生的不论什么错误。传输控制协议(TCP)是提供可靠传输数据的TCP/IP协议族中的传输层协议。

  第五层:会话层

  建立、管理和终止表示层与实体之间的通信会话。通信会话包含发生在不同网络应用层之间的服务请求和服务应答,这些请求与应答通过会话层的协议实现。它还包含创建检查点,使通信发生中断的时候能够返回到曾经的一个状态。

  第六层:表示层

  提供多种功能用于应用层数据编码和转化,以确保以一个系统应用层发送的信息能够被还有一个系统应用层识别。

表示层的编码和转化模式包含公用数据表示格式、性能转化表示格式、公用数据压缩模式和公用数据加密模式。

  公用数据表示格式就是标准的图像、声音和视频格式。通过使用这些标准格式。不同类型的计算机系统能够相互交换数据。转化模式通过使用不同的文本和数据表示,在系统间交换信息,比如ASCII(American Standard Code for Information Interchange。美国标准信息交换码);标准数据压缩模式确保原始设备上被压缩的数据能够在目标设备上正确的解压;加密模式确保原始设备上加密的数据能够在目标设备上正确地解密。

  表示层协议一般不与特殊的协议栈关联,如QuickTime是Applet计算机的视频和音频的标准,MPEG是ISO的视频压缩与编码标准。

常见的图形图像格式PCX、GIF、JPEG是不同的静态图像压缩和编码标准。

  第七层:应用层

  最接近终端用户的OSI层,这就意味着OSI应用层与用户之间是通过应用软件直接相互作用的。

注意。应用层并不是由计算机上执行的实际应用软件组成,而是由向应用程序提供訪问网络资源的API(Application Program Interface,应用程序接口)组成。这类应用软件程序超出了OSI模型的范畴。应用层的功能一般包含标识通信伙伴、定义资源的可用性和同步通信。由于可能丢失通信伙伴。应用层必须为数据传输的应用子程序定义通信伙伴的标识和可用性。

定义资源可用性时,应用层为了请求通信而必须判定是否有足够的网络资源。在同步通信中,全部应用程序之间的通信都须要应用层的协同操作。

  OSI的应用层协议包含文件的传输、訪问及管理协议(FTAM) ,以及文件虚拟终端协议(VIP)和公用管理系统信息(CMIP)等。

2. TCP/IP分层模型

  TCP/IP分层模型(TCP/IP Layening Model)被称作因特网分层模型(Internet Layering Model)、因特网參考模型(Internet Reference Model)。

  

                                           TCP/IP四层參考模型

  TCP/IP协议被组织成四个概念层。当中有三层相应于ISO參考模型中的相应层。ICP/IP协议族并不包括物理层和数据链路层,因此它不能独立完毕整个计算机网络系统的功能,必须与更多的协议协同工作。

  TCP/IP分层模型的四个协议层分别完毕下面的功能:

  第一层:网络接口层

  包含用于协作IP数据在已有网络介质上传输的协议。

实际上TCP/IP标准并不定义与ISO数据链路层和物理层相相应的功能。相反。它定义像地址解析协议(Address Resolution Protocol,ARP)这种协议,提供TCP/IP协议的数据结构和实际物理硬件之间的接口。

  第二层:网间层

  相应于OSI七层參考模型的网络层。本层包括IP协议、RIP协议(Routing Information Protocol,路由信息协议),负责数据的包装、寻址和路由。同一时候还包括网间控制报文协议(Internet Control Message Protocol,ICMP)用来提供网络诊断信息。

  第三层:传输层

  相应于OSI七层參考模型的传输层,它提供两种端到端的通信服务。

当中TCP协议(Transmission Control Protocol)提供可靠的数据流运输服务,UDP协议(Use Datagram Protocol)提供不可靠的用户数据报服务。

  第四层:应用层

  相应于OSI七层參考模型的应用层和表达层。因特网的应用层协议包含Finger、Whois、FTP(文件传输协议)、Gopher、HTTP(超文本传输协议)、Telent(远程终端协议)、SMTP(简单邮件传送协议)、IRC(因特网中继会话)、NNTP(网络新闻传输协议)等,这也是本书将要讨论的重点。

时间: 2024-12-16 04:31:32

数据在网络7层中的传输过程的相关文章

数据包进入互联网在网络中的传输

本章是'网络是怎么连接的--读后感'第四章 前言 本章是系列博客的第四章:第一章讲数据发送的场景:第二章主要讲叙消息是如何发送出去的.:第三章主要阐述数据包在客户端局域网中的传输:本章详细阐述数据在互联网中是如何传输的. 实现需求 本章主要阐述数据在互联网中的传输:主要讲两种网络接入方式:在接入网的过程中运营商通过使用ppp协议和隧道技术实现对用户的身份验证和公有地址分配:同时会对网络运营商内部网络进行介绍:同时还会对互联网中跨运营商通信进行介绍. ADSL接入网的结构和工作方式 光纤接入网 接

[转载] Google数据中心网络技术漫谈

原文: http://www.sdnlab.com/12700.html?from=timeline&isappinstalled=0#10006-weixin-1-52626-6b3bffd01fdde4900130bc5a2751b6d1&sukey=fc78a68049a14bb247c537e229e9301ea4dca80236df4f4e775535c08f0a24420a9ac4d726c99dad63a9f6e4c88271ed 真羡慕 google 强大的网络基础设施啊,

JVM内存模型及对象在内存中初始化的过程

JVM内存模型 Java虚拟机所管理的内存区域,也称为运行时数据区,分为以下几个运行时数据区,如图所示 程序计数器:当前程序所执行字节码的行号指示器 程序计数器(Program Counter Register)是一块较小的内存空间,可以看作是当前线程所执行的字节码的行号指示器.在虚拟机的概念模型里,字节码解释器工作时就是通过改变这个计数器的值来选 取下一条需要执行的字节码指令,分支.循环.跳转.异常处理.线程恢复等基础功能都需 要依赖这个计数器来完成. Java虚拟机的多线程是是通过线程轮流切

网络——因特网协议栈中的层

因特网协议栈中的层 人们已经进行了一些讨论关于如何将TCP/IP参考模型映射到OSI模型.由于TCP/IP和OSI模型组不能精确地匹配,还没有一个完全正确的答案. 另外,OSI模型下层还不具备能够真正占据真正层的位置的能力:在传输层和网络层之间还需要另外一个层(网络互连层).特定网络类型专用的一些协议应该运行在网络层上,但是却运行在基本的硬件帧交换上.类似协议的例子有地址解析协议和生成树协议(用来保持冗余网桥的空闲状态直到真正需要它们).然而,它们是本地协议并且在网络互连功能下面运行.不可否认,

TCP/IP中的传输层协议TCP、UDP

TCP提供可靠的通信传输,而UDP则常用于让广播和细节控制交给应用的通信传输. 传输层协议根据IP数据报判断最终的接收端应用程序. TCP/IP的众多应用协议大多以客户端/服务端的形式运行.客户端是请求的发起端,而服务端表示提供服务的意思,是请求的处理端.因此,作为服务端的程序有必要提前启动,准备接收客户端的请求.传输协议根据接收数据中的目标端口号识别目标处理程序. TCP.UDP比较 TCP提供可靠性传输.实行顺序控制或重发控制机制,还有流量控制和拥塞控制,提高网络利用率. UDP是不具备可靠

TCP/IP 协议图--传输层中的 TCP 和 UDP

TCP/IP 中有两个具有代表性的传输层协议,分别是 TCP 和 UDP. TCP 是面向连接的.可靠的流协议.流就是指不间断的数据结构,当应用程序采用 TCP 发送消息时,虽然可以保证发送的顺序,但还是犹如没有任何间隔的数据流发送给接收端.TCP 为提供可靠性传输,实行"顺序控制"或"重发控制"机制.此外还具备"流控制(流量控制)"."拥塞控制".提高网络利用率等众多功能. UDP 是不具有可靠性的数据报协议.细微的处理它会

信号在网线和集线器中的传输(《网络是怎样连接的》)

这一章主要是下面四个内容的讲解: "每个包都是独立传输的" "信号衰减的抑制非常重要" "双绞线是为了抑制噪声" "集线器将信号发往所有线路" 1. 每个包都是独立传输的 从计算机中发出来的网络包都会通过集线器.路由器等设备被转发,设备会根据包头部中的控制信息来进行转发,并不会查看数据的内容,因此,所有的包再传输到目的地的过程中都是独立的,相互之间没有任何关联. 网络包从客户端计算机发出之后,要经过集线器.交换机和路由器最终进

service层中数据异常时回滚

/**删除  * @param pd  * @throws Exception  */ @Transactional(rollbackFor = Exception.class) @Override public void delete(String INCOMINGDISPATCHDOCId)throws Exception{ // 删除文件附件 fileService.deleteByBusId(INCOMINGDISPATCHDOCId); dao.delete("IncomingDisp

.net 在数据访问层中写一个DBhelper优化类

复习了在学校的时候做的WinForm端的一个学生信息管理系统,用的三层架构,看了一下里面的数据优化类 这个类是用来把对数据库的操作封装成静态方法,增删改查的时候直接调用这个类,减少项目里代码的冗余和方便以后修改. Dbhelper类代码如下: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System