OSI參考模型
在過去的電腦網路上,由於資料通訊系統涉及複雜的軟硬體,可是又沒有統一的標準,導致通訊軟體不僅龐大複雜,而且不易測式、修改或分享。為此,ISO(國際標準組織)發展出一套OSI參考模型(Open System Interconnection reference model, 開放系統互連參考模型)。發訊端送出的資料會沿著OSI參考模型的七個層次(layer)一路向下,然後經由資料網路(data network)抵達目的設備,再沿著參考模型的七個層次一路向上抵達收訊端,所謂的發訊端、收訊端可以是電腦、印表機、光碟機、磁碟…等。

OSI參考模型的定義相當寬鬆,它將網路的功能及運作粗略分成下列七個層次,多數的通訊協定都可以放入其中一個層次:

應用層(application layer)
位於OSI參考模型的第七層也是最上層,屬於使用者端應用程式與網路服務之間的介面,負責提供網路服務給應用程式、訊息交換、檔案傳輸、網頁瀏覽…,諸如FTP、DNS、SMTP、Telnet、POP、HTTP等通訊協定均屬於應用層。

表達層(presentation layer)
位於OSI參考模型的第六層,負責內碼轉換、加密/解密、壓縮/解壓縮等工作。

會議層(session layer)
位於OSI參考模型的第五層,負責建立、維護與切斷連線(傳輸模式有單工、半雙工、全雙工等三種)、對話控制、資料交換管理等工作,目的是控制資料收發時機,例如何時傳送資料?何時接收資料?

傳輸層(transport layer)
位於OSI參考模型的第四層,負責區段排序、錯誤控制、流量控制等工作,確保資料安全抵達收訊端的傳輸層,諸如UDP通訊協定與Internet所使用的TCP通訊協定均屬於傳輸層。

網路層(network layer)
位於OSI參考模型的第三層,負責邏輯定址(logical addressing)、路由(routing)等工作,其中邏輯定址是賦予收訊端與發訊端唯一可識別的位址;路由是考慮路徑的實際情況,然後幫封包選擇最佳路徑,如X.25通訊協定、IPX通訊協定與Internet所使用的IP通訊協定均屬於網路層。

資料連結層(data link layer)
位於OSI參考模型的第二層,負責訊框處理、實體定址(physical addressing)、錯誤控制、流量控制、媒介存取控制等工作,其中訊框處理是把從網路層接收的封包(packet)封裝成訊框(frame);實體定址是根據實體位址找出目的設備究竟位於哪個網路的哪部電腦;媒介存取控制則決定了如何避免發生碰撞及如何解決碰撞,常見的方式有CSMA/CD、Control Token…。

實體層(physical layer)
位於OSI參考模型的第一層也是最底層,目的是讓資料透過實體的傳輸媒介傳送,負責定義網路所使用的訊號編碼、基頻傳輸或寬頻傳輸、拓樸、傳輸媒介、傳送速度、傳送距離、接頭、電壓、電流…等規格。

TCP/IP參考模型
Internet採用TCP/IP通訊協定,相較於OSI參考模型將網路的功能分成七個層次,TCP/IP參考模型則是分成下列四個層次,雖然簡化為四個層次,但它並不是去除OSI參考模型的某些層次,而是將功能類似的層次合併,包括將應用層、表達層及會議層合併為應用層,保留傳輸層和網路層,將實體層及資料連結層合併為連結層。

應用層(application layer)
這個層次負責提供網路服務給應用程式,比較知名的通訊協定有FTP(file transfer protocol, 檔案傳輸協定)、SMTP(simple mail transfer protocol, 簡易郵件傳送協定)、POP(Post office protocol, 郵件接收協定)、DNS(domain name system, 網域名稱系統)、Telnet(遠端登入)、SNMP(simple network management protocol, 簡易網路管理協定)、HTTP(hypertext transfer protocol, 超文字傳輸協定)、NNTP(network news transfer protocol)…等。

傳輸層(transport layer)
這個層次又叫做主機對主機層(host-to-host layer),負責區段排序、錯誤控制、流量控制等工作,比較知名的通訊協定有TCP(transmission control protocol)、UDP(user datagram protocol)。

網路層(network layer)
這個層次又叫做網際網路層(Internet layer),負責定址與路由等工作,而且資料是以資料元(datagram)為單位,比較知名的通訊協定有IP(Internet protocol)。

連結層(link layer)
這個層次又叫做網路介面層(network interface layer),負責與硬體溝通,雖然沒有定義任何通訊協定,但基本上,它支援所有標準的通訊協定。

雖然TCP/IP參考模型的定義沒有OSI參考模型嚴謹,但簡化為四個層次卻使得它的處理效率較佳,而且它的結構簡潔易懂,反而比OSI參考模型還受歡迎。

[TCP/IP]OSI七层模型和TCP/IP四层模型的更多相关文章

  1. 大白话聊OSI七层模型和TCP/IP四层模型

    前言 今天和大家聊的是一个比较基础的问题,OSI七层模型和TCP/IP四层模型. 小伙伴们可能有疑问,这个东西还用写文章吗,太基础了吧,网上文章多的是,随便一搜索就能找到. 确实是这样,网上资料确实很 ...

  2. OSI 七层模型和 TCP/IP 协议比较

      OSI (Open System Interconnection), 开放式系统互联参考模型.从下到上七层模型功能及其代表协议: 物理层(Physical) :规定了激活.维持.关闭通信端点之间的 ...

  3. 网络知识学习1---(基础知识:ISO/OSI七层模型和TCP/IP四层模型)

    以下的内容和之后的几篇博客只是比较初级的介绍,想要深入学习的话建议自己钻研<TCP/IP详解 卷1:协议> 1.ISO/OSI七层模型    下四层是为数据传输服务的,物理层是真正的传输数 ...

  4. 简述osi七层模型和TCP/IP五层模型

    OSI七层模型 OSI七层模型的划分 应用层(Application).表示层(presentation).会话层(session).传输层(Transport).网络层(Network).数据链路层 ...

  5. OSI七层模型和TCP/IP五层模型详解

    OSI是一个开放性的通信系统互连参考模型,他是一个定义得非常好的协议规范.OSI模型有7层结构,每层都可以有几个子层. OSI的7层从上到下分别是 7 应用层 6 表示层 5 会话层 4 传输层 3 ...

  6. Java网络编程:OSI七层模型和TCP/IP模型介绍

    OSI(Open System Interconnection),开放式系统互联参考模型 .是一个逻辑上的定义,一个规范,它把网络协议从逻辑上分为了7层.每一层都有相关.相对应的物理设备,比如常规的路 ...

  7. 计算机网络漫谈之OSI七层模型和TCP/IP四层模型

    在 什么是网络? 中,你已经知道计算机网络是物理连接的"局域网"和工作于这个局域网上的"网络协议",并且我们的重心是网络协议.有关网络协议,按照目前的分层方式主 ...

  8. OSI七层模型和tcp/ip四层模型对比

    OSI 与TCP/IP 模型对比 OSI 协议层名称 TCP/IP 协议层名称 封装的单元 功能描述 TCP/IP协议 应用层(Application) 应用层(Application) 数据 应用程 ...

  9. OSI 七层模型和 TCP/IP 四层模型 及 相关网络协议

    简介 OSI 是理论上的模型,也就是一个统一的国际标准,现在的很多网络设备或者是网络协议都不同程度的精简了自己的所谓的模型,那么他们为了自己的通讯兼容都会参考这个OSI模型 TCP/IP 包括: TC ...

随机推荐

  1. 游戏引擎基于Handle的资源管理

    基于Handle的资源管理方案,第一时间想到的应该是Windows了,但是真正想让我实施这个方案的,是<游戏编程精粹1>里面的游戏资源管理篇章的给出的方案.在<游戏编程精粹1> ...

  2. 鸟哥的linux私房菜 - 第5/6/7/9章(在线求助 man page、Linux档案权限与目录配置、Linux档案与目录管理、压缩与打包)

    第五章.在线求助 man page X window与文本模式的切换 Ctrl+Alt+F1~F6:文字接口登入tty1~tty6终端机: Ctrl+Alt+F7:图形接口桌面. 注销当前用户:exi ...

  3. openfire插件开发环境

    创建java工程 SamplePlugin: package com.hoo.server.plugin; import java.io.File; import org.jivesoftware.o ...

  4. Sox语音转换的相关知识

    SoX-linux 里操作音频的瑞士军刀 Sox是最为著名的Open Source声音文件 格式转换工具.已经被广泛移植到Dos.windows.OS2.Sun.Next.Unix.Linux等多个操 ...

  5. 遁入NOIP记

    回归noip啦 给自己定个小目标 500分起步 在这里列一下需要搞的东西OvO 1.算法基础 模拟 贪心 二分 分治 2.搜索 / 记忆化搜索 剪枝 对抗搜索 3.dp 状压 组合数学 树D 单队 D ...

  6. Katalon Recorder 自动录制 Selenium 爬虫脚本

    相信很多小伙伴都用过 Selenium 来完成爬虫工作,今天就给大家带来一个神器,可以录制你的浏览器动作,然后直接生成 Selenium 脚本,是不是心动了? 1 Selenium 简介 Seleni ...

  7. T(n) = 25T(n/5)+n^2的时间复杂度

    对于T(n) = a*T(n/b)+c*n^k;T(1) = c 这样的递归关系,有这样的结论: if (a > b^k)   T(n) = O(n^(logb(a)));logb(a)b为底a ...

  8. WebSocket的C++服务器端实现

    由于需要在项目中增加Websocket协议,与客户端进行通信,不想使用开源的库,比如WebSocketPP,就自己根据WebSocket协议实现一套函数,完全使用C++实现. 代码已经实现,放在个人g ...

  9. 【转】STL中的set容器的一点总结

    转自 http://www.cnblogs.com/BeyondAnyTime/archive/2012/08/13/2636375.html 1.关于set C++ STL 之所以得到广泛的赞誉,也 ...

  10. Behave + Selenium(Python) 二

    介绍feature, py文件和之间关系: example01.feature文件包括5行: Feature行: 介绍这个feature用来干什么的: Scenario行:介绍这个scenario用来 ...