OSI 七层模型 VS TCP/IP 协议族
来源:互联网 发布:花千骨天羽进阶数据 编辑:程序博客网 时间:2024/06/02 02:37
OSI 七层模型
OSI 七层模型的本意是为OSI 框架中的各种协议的创建提供基础,七层由底层到上层依次为 物理层、数据链路层、网络层、运输层、会话层、表现层 和 应用层,各层之间通过接口通信,接口定义了相应层对上层提供什么样的信息和服务,只要提供了符合接口规定的数据,就可以替换相应的层。
这不是软件工程中松散耦合的实践么 ^_^,谈到这里,不得不提一下 CSS 3 中的模块式迭代的规范草案,一个模块不影响另一个模块的发布和制定,这不都是很好的实践么?我等也要追求这样的设计。
各个层的作用:
- 应用层,允许访问网络资源;
- 表示层,数据的转换、加密和压缩;
- 会话层,建立、管理和终止会话;
- 运输层,提供可靠的进程到进程的交付和差错恢复;
- 网络层,从源到终点传送分组,提供网络互联;
- 数据链路层,将比特组织成帧结构,提供逐跳交付;
- 物理层,经过媒体传送比特,提供机械的和电气的规约;
TCP/IP 协议族
TCP/IP 协议族,比 OSI 七层模型出现的早,但是和 OSI 模型的分层不一样,OSI模型每层强调定义相应的功能接口,而 TCP/IP 协议族的每层容纳一定数量的协议,这也是它为什么叫协议族的原因吧!两个模型类似,但是有一些分层方面的不同,请看图:
图1 TCP/IP 协议族和OSI模型分层对比
TCP/IP 协议族分为五层,应用层是应用程序用到的协议,如软件等,HTTP协议在这一层;运输层应该是操作系统层面的,负责在两台电脑端口之间建立管道,传输数据,TCP协议就在这一层;网络层主要是通过IP简历两台主机之间的联系,IP 协议在这一层;数据链路层和物理层,更倾向于硬件了,日常开发基本用不到,我也就不研究了,偷个懒。【笑】
我们用一个表来说明TCP/IP 协议族中应用层、运输层和网络层每层都有哪些协议:
表1 TCP/IP 协议族应用层、运输层和网络层每层容纳协议
作为一名合格前端,你可能对于 IP、TCP、DNS、TELNET、SSH 和 HTTP 已经司空见惯,在 Windows 中你对 IP 协议的认识可能是 ping 命令(查询服务器是否有响应),ipconfig命令(查询本机 IP 地址);TCP 用到最多的就是 socket 编程中用到;DNS 作用是将字符串域名转换为 IP 地址,以便利用 IP 协议在互联网中找到相应的主机;TELNET 是 Windows 中远程登录用到的协议,SSH 是 TELNET 的加密版本,也用于登录远程主机,多用于 Linux,比如 ssh root@122.122.122.12
;HTTP 用于访问互联网上的文档和其它资源,浏览器就是利用 HTTP 访问网页的,所以这个协议跟我们最近,网站的性能直接跟这个协议息息相关。
还有一个协议,你也需要了解 : ICMP,Internet Control Message Protocol(网际控制报文协议),IP 协议是帮我们寻找远程主机的,但是途径几个节点,在任何一个节点都可能失败,但是 IP 协议并不具备差错报告或差错纠正机制,如何知道在哪个节点失败的呢?你可能会想到 ping,这个命令只会告诉你是否出错,不会告诉你那里出错的。这时你需要的命令是 tracert
,参数为目标 IP 地址,或者网址(会自动使用 DNS 协议转换为 IP),下图为使用命令追踪 baidu.com
的结果:
图2 tracert baidu.com
结果
总结
差不多明白了 OSI 七层模型和 TCP/IP 协议族的组织和各层功能了吧,捋一捋思路更清晰,身体更健康。【笑】
这里所说的这些是基础,理解整个互联网的实质和结构,在前端开发中,最重要的还是 HTTP(因为与浏览器直接相关嘛),接下来得仔细总结一下自己学过的 HTTP 知识了,下篇文章再说。
部分参考
TCP/IP 协议族(第四版)
自己的总结
- OSI 七层模型 VS TCP/IP 协议族
- OSI七层模型与TCP/IP协议(族)
- OSI七层模型 vs TCP/IP五层模型
- OSI七层协议和TCP/IP四层模型
- OSI网络七层模型和TCP/IP协议模型
- OSI 七层模型和 TCP/IP 协议比较
- osi七层模型和tcp/ip四层模型每层作用和协议
- OSI七层网络模型,TCP/IP四层网络模型与网络协议解析
- OSI七层协议模型和TCP/IP四层模型比较
- OSI七层网络模型,TCP/IP四层网络模型与网络协议解析
- OSI七层协议模型和TCP/IP四层模型比较
- OSI七层协议模型和TCP/IP四层模型比较
- OSI七层协议模型和TCP/IP四层模型比较
- OSI七层协议模型、TCP/IP四层模型学习笔记
- OSI七层模型TCP/IP协议五层模型小结
- OSI七层协议模型和TCP/IP四层模型比较
- OSI七层协议模型和TCP/IP四层模型比较
- OSI七层协议模型和TCP/IP四层模型比较
- 从网上看到的QT的android版安装到Linux的配置方法
- C语言指针(二)
- Linux 优秀软件资源大全中文版
- C++中的左值与右值
- weblogic面试题
- OSI 七层模型 VS TCP/IP 协议族
- 面向对象编程OOP的优点
- JAVA面试题集(2)
- bzoj3436(差分约束系统)
- 文章标题
- Ibatis如何调用存储过程?
- linux kernel是如何做到释放仅在启动时使用的内存的?
- 修改.srt格式字幕文件
- Java方向软件笔试题