TCP/IP学习笔记2--协议分层与OSI参考模型
协议的分层:
为解决不同计算机之间的通信,ISO(International Organization for Standards)指定了一个国际标准OSI(Open Systems Interconnection,开放式系统互联)。现在OSI虽然没有得到普及,但是提出的OSI参考模型常常被用于网络协议的制定中。
(TCP/IP并非ISO所制定的标准,而是由IETF(Internet Engineering Task Force)所建议的,致力于推进标准化作业的一种协议。)
OSI参考模型将通信协议中的功能分成了7层,通过分层使得那些比较复杂的网络协议简单化。上下层之间进行交互时所遵循的约定叫做“接口”,同一层之间交互所遵守的约定叫做“协议”。分层可以将每个层独立使用,增强系统的灵活性;分层的缺点在于,每个模块可能需要实现重复的逻辑功能。
OSI参考模型:
1)应用层: 为应用程序提供服务并规定应用程序中通信的细节。例如,文件传输,电子邮件,远程登录等协议。
2)表示层:将应用层传来的信息转换为适合网络传输的格式;将来自下一层的数据转换为应用层能够处理的格式;主要负责数据格式的转换。
3)会话层:负责建立和断开通信连接,数据的分割,等。
4)传输层:起着可靠传输的作用,只在通信双方节点上进行处理,而无需再路由器上处理。---???
5)网络层:将数据传输到目标地址,主要负责寻址和路由选择。
6)数据链路层:负责物理层面上互联的节点之间的通信传输。----?
7)物理层:负责0、1比特流与电压的高低,光的闪灭之间的互换。
OSI参考模型通信处理举例:
用户A发送邮件给用户B:
发送方从第7层,第六层,直到第1层,由上至下发送数据,而接收端顺序相反。对于每一个分层,在处理由上一层传输过来的数据时可以附上当前分层的协议所需要的首部信息。
1)应用层: 用户A用邮件软件来写邮件,填写地址,当其按下发送之后,软件就进入了应用层协议的处理。协议会在所要发送的数据的首部加上特定信息。B的邮件软件接受到数据之后,会识别该首部信息-----相当于A和B的应用层之间的通信。
2)表示层: 该层关注的是数据的“表现”形式,其作用是将数据从“某个计算机特有的数据格式”转换为“网络通用的标准数据格式”,然后再发送出去,接受端接受到之后,将通用的标准格式转换为接收端的主机能识别格式,再进行相应的处理。这样就防止了由于不同的主机有不同的数据格式而不能相互通信。该层与编码格式相关(?)。
3)会话层: 假设A写了2封邮件给B,这两封邮件的发送顺序可能有多种,例如,可以没发送一个就建立一次连接随后断开,或,一旦建立好连接后就将邮件连续发送给对方。--- 采用何种方式便是会话层的主要责任。 改层也想应用层,表示层那样,在其收到的数据前加上标签信息,然后发送给下一层,标签信息中记录着数据的传送顺序。
传输层以下的处理: 会话层只对何时建立连接,何时发送数据等问题进行管理,并不具备实际的数据传输功能,真正实现在网络上传送实际数据的是会话层以下的层。
4)传输层:
传输层负责在建立逻辑上的通信连接,进行建立或断开连接的工作。(会话层决定建立和断开连接的时机,而传输层进行时机的建立和断开连接)。另,传输层为确保所传输的数据到达目标地址,会在通信两端的计算机之间进行确认,如果数据没有达到,它会负责重发。
保证数据传输的可靠性是传输层的重要作用。为了确保可靠性,该层也会在其传送的数据首部添加信息,然而,实际上,将数据传送给对端的处理是由网络层完成的。
(5)网络层,数据链路层,物理层
网络层的作用是在网络与网络互连的环境中,将数据从发送端主机发送到接收端主机。
通信最终是通过物理介质完成的,数据链路层的作用是 在通过传输介质互连的设备之间进行数据处理。
物理层,将数据的0,1转换为电压和脉冲光传输给物理的传输介质。
另,MAC地址(Media Access Control)用于识别连接到同一个传输介质上的设备。-----????