协议的分层:

为解决不同计算机之间的通信,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)用于识别连接到同一个传输介质上的设备。-----????

TCP/IP学习笔记2--协议分层与OSI参考模型的更多相关文章

  1. TCP/IP学习笔记12-- IP协议基础

    IP(internet protocol, 网际协议) IP相当于OSI参考模型中的第三层 -- 网络层. --网络层的下一层--数据链路层的主要作用是在 同一种数据链路 的节点之间进行包传递,而一旦 ...

  2. tcp/ip学习笔记-TCP

    tcp/ip学习笔记-TCP 彭会锋 报文发送采用的是tcp_output函数,

  3. tcp/ip学习笔记(1)-基本概念

    为什么会有tcp/ip 在世界上各地,各种各样的电脑运行着各自不同的操作系统为大家服务,这些电脑在表达同一种信息的时候所使用的方法是千差万别.就好像圣经中上帝打乱了各地人的口音,让他们无法合作一样.计 ...

  4. TCP/IP学习笔记(3)-IP、ARP、RARP协议

    这三个协议放到一起学习是因为这三个协议处于同一层,ARP协议用来找到目标主机的Ethernet网卡Mac地址,IP则承载要发送的消息.数据链路层可以从ARP得到数据的传送信息,而从IP得到要传输的数据 ...

  5. TCP/IP学习笔记(3)----IP,ARP,RARP协议

    把这三个协议放到一起学习是因为这三个协议处于同一层(网络层协议),ARP协议用来找到目标主机的Ethernet网卡Mac地址,IP则承载要发送的消息.数据链路层可以从ARP得到数据的传送信息,而从IP ...

  6. TCP/IP学习笔记1--概述,分组交换协议

    1.TCP/IP 互联网是由许多独立发展的网络通信技术融合而成的,能够使它们不断融合并实现统一的正式TCP/IP技术,TCP/IP使通信协议的统称. TCP/IP协议模型(Transmission C ...

  7. TCP/IP学习笔记5--网络的构成要素

    人的灵魂来自一个完美的家园,那里没有任何污秽和丑陋,只有纯净和美丽.----大鱼海棠 1.通信媒介与数据链路 计算机之间通过各种电缆相互连接. 2.网卡 任何一台计算机接入网络都需要网卡,又称网络适配 ...

  8. TCP/IP学习笔记4--网络地址

    "他强由他强,清风拂山岗.他横由他横,明月照大江.世间诸事,敞开心扉,顺其自然." -- 张大千 地址具有两个特性: 1:唯一性 同一个通信网络中的任意两个通信主体不能具有相同的地 ...

  9. TCP/IP学习笔记7--TCP/IP模型通信例子学习

    "一位如蝴蝶般美丽的女子向我飞来,翩翩的舞姿如同云端轻盈的叶儿." -------------------------------------------------------- ...

随机推荐

  1. 《团队作业第三、四周》五阿哥小组Scrum 冲刺阶段---Day3

    <团队作业第三.四周>五阿哥小组Scrum 冲刺阶段---Day3 一.项目燃尽图 二.项目进展 20182310周烔今日进展: 主要任务一览:界面布局的设计 20182330魏冰妍今日进 ...

  2. C# 基础回顾: volatile 关键字

    有些人可能从来没看到过这个关键字,这也难怪,因为这个关键字并不常用.那这个关键字到底有什么用呢? 我在网上搜索这个关键字的时候,发现很多朋友都有一个错误的认识 ------ 认为这个关键字可以防止并发 ...

  3. Web API design

    Web API design 28 minutes to read Most modern web applications expose APIs that clients can use to i ...

  4. nexus 3.17.0 做为golang 的包管理工具

    nexus 3.17.0 新版本对于go 包管理的支持是基于go mod 的,同时我们也需要一个athens server 然后在nexus 中配置proxy 类型的repo 参考配置 来自官方的配置 ...

  5. mysql 查询账户

    查询 mysql 的存在的账户  >select user,host,password from mysql.user; # 可以查询涉及到user. host 链接权限.密码加密文件.

  6. CSPS_111

    这场是众神的AKsh♂ow 而我T2 long long没开够没有AK 如果这是CS... T1 迭代就可以 T2 设x不断除2直到x为奇数得到的奇数为y 则y相同的所有x明显分成了两个互斥的部分 对 ...

  7. 洛谷P4343 [SHOI2015]自动刷题机

    题目 易得该题目中的\(n\)和\(k\)具有单调性,满足二分的性质,因此该题目而已用二分来枚举\(n\),然后对于每个\(n\)模拟出它所对应的\(k\),然后注意注意代码细节,并且当当前\(k\) ...

  8. Fiddler如何查找登陆的可用cookie用于其他请求?方式一

    测试过程中,如果你的请求权限是通过cookie响应而不是通过token获得,那么使用如下设置: 1.进入fiddler抓取: 2.jmeter中使用cookie 直接放进去就好了,一般浏览器cooki ...

  9. mysql5.7 之 sql_mode=only_full_group_by问题

    在使用查询时,使用到了group by 分组查询,报如下错误: ERROR (): In aggregated query without GROUP BY, expression # of SELE ...

  10. SDN初体验(软件定义网络实验一)

    作业说明 本次实验步骤2.3是在机房环境下完成的,步骤1.4是在自己笔记本上重新配置完成的,所以环境.用户名什么的会略有差别. 1. 安装轻量级网络仿真工具Mininet 为了节约课程时间,实验室机房 ...