计算机协议、标准以及OSI模型的简单介绍
由概念启发学习,引导学习。本篇文章中包含了一些最基本的概念和底层知识。虽然零碎,但是这是基础。
一、协议和标准
协议指的是一组控制数据通信的规则。协议有三要素:语法(syntax),语义(semantics),时序(Timing)。具体说明请参考百度百科。
标准是一致同意的规则。标准分为两种:事实的标准(de-facto,指的是实际或者习惯。例如TCP/IP);合法标准(de-jury,指的是法律或者规章)
二、RFC
对于Internet标准我们可以在网站中可以找到历年以来的各种协议标准信息,其中有经典的RFC2026(描述了在因特网中如何制定标准)、RFC791(Internet Protocol)等等信息内容,其中各种RFC status参考如下:historic(过时的)、standard(当前标准)、proposed standard(建议标准,后续有可能有变化)、draft standard(标准草稿)、experimental(实验)、informational(信息)。
三、Internet的管理机构
ISOC(Internet Society 因特网协会:提供对Internet标准化过程的支持。www.isoc.org)
|-- IAB(Internet Architecture Broad 因特网体系结构研究委员会:监督TCP/IP协议族的连续发展,编辑管理RFC。www.iab.org)
|-- IRTF(Internet Research Task Force 因特网研究部:负责Internet协议、应用、体系结构和技术的长期发展。www.irtf.org)
|-- IETF(Internet Engineering Task Force 因特网工程部:解决并找出Internet运行问题,开发并评审Internet标准。www.ietf.org)
原IANA(Internet Assigned Numbers Authority 因特网编号管理局:管理Internet域名和地址.www.iana.org)调整为现在的ICANA(Internet Corporation of Assigned Names and Numbers 因特网名称和号码分配公司)
四、OSI参考模型
OSI(Open System InterConnection 开发系统互联)是ISO的标准,是一个网络体系结构的概念模型。目的是使得两个开放的不同系统能够互相通信,而不需要改变底层的硬件或软件逻辑。
五、OSI模式的层次功能
⑦,应用层(Application Layer)提供为应用软件而设的接口,以设置与另一应用软件之间的通信。例如: HTTP,HTTPS,FTP,TELNET,SSH,SMTP,POP3等。
⑥,表达层(Presentation Layer)把数据转换为能与接收者的系统格式兼容并适合传输的格式。
⑤,会话层(Session Layer)负责在数据传输中设置和维护电脑网络中两台电脑之间的通信连接。
④,传输层(Transport Layer)把传输表头(TH)加至数据以形成数据包。传输表头包含了所使用的协议等发送信息。例如:传输控制协议(TCP)等。
③,网络层(Network Layer)决定数据的路径选择和转寄,将网络表头(NH)加至数据包,以形成分组。网络表头包含了网络数据。例如:互联网协议(IP)等。
②,数据链路层(Data Link Layer)负责网络寻址、错误侦测和改错。当表头和表尾被加至数据包时,会形成帧。数据链表头(DLH)是包含了物理地址和错误侦测及改错的方法。数据链表尾(DLT)是一串指示数据包末端的字符串。例如以太网、无线局域网(Wi-Fi)和通用分组无线服务(GPRS)等。分为两个子层:逻辑链路控制(logic link control,LLC)子层和介质访问控制(media access control,MAC)子层。
①,物理层(Physical Layer)在局部局域网上传送数据帧(data frame),它负责管理电脑通信设备和网络媒体之间的互通。包括了针脚、电压、线缆规范、集线器、中继器、网卡、主机适配器等。
①~③是网络支持层(软/硬件),⑤~⑦是应用支持层(软件)。每一层可以同时存在多个实体(例如应用层的邮件、浏览器);每一层可以同时存在多个协议(例如SMTP、HTTP)。
六、PDU协议数据单元
PDU有两层含义:
①,网络的对等实体传送的信息单元,包括了控制信息,地址信息,或者数据。
②,在分层协议系统里,在指定的协议层上传送的数据单元,包含了该层的协议控制信息和用户信息。
在OSI模型中,PDU跟最底下四层相关:
在物理层,PDU指的是数据位/比特流(Bit)。
在数据链路层,PDU指的是数据帧(Frame)。
在网络层,PDU指的是数据包/分组(Packet)。
在传输层,PDU指的是数据段(Segment)。
在第五层以上都为数据。在特定的上下文的情况下,一个特定层的PDU可以代表这个层。
本文参考了维基百科,百度百科以及经典书籍《TCP/IP 详解》部分内容。
计算机协议、标准以及OSI模型的简单介绍的更多相关文章
- 基于SIP和RTP协议的开源VOIP之QuteCom简单介绍
**************************************************************************************************** ...
- 服务器端IO模型的简单介绍及实现
https://mp.weixin.qq.com/s?src=3×tamp=1541726441&ver=1&signature=xPSye3v7miF7aVeLHb ...
- 服务器端IO模型的简单介绍及实现 阻塞 / 非阻塞 VS 同步 / 异步 内核实现的拷贝效率
小结: 1.在多线程的基础上,可以考虑使用"线程池"或"连接池","线程池"旨在减少创建和销毁线程的频率,其维持一定合理数量的线程,并让空闲 ...
- UML动态模型图简单介绍
UML动态模型图描述了系统动态行为的各个方面,包括用例图.序列图.协作图.活动图和状态图.下面就每种图做一个简单介绍: 用例图 用例图描述系统外部的执行者与系统提供的用例之间的某种联系.所谓用例是指对 ...
- 计算机网络系统--TCP/IP OSI模型
- 几种服务器端IO模型的简单介绍及实现
一些概念: 同步和异步 同步和异步是针对应用程序和内核的交互而言的,同步指的是用户进程触发I/O操作并等待或者轮询的去查看I/O操作是否就绪,而异步是指用户进程触发I/O操作以后便开始做自己的事情,而 ...
- 微软BI 之SSAS 系列 - 在 SQL Server 2012 下查看 SSAS 分析服务的模型以及几个模型的简单介绍
在SSDT中部署一个 SSAS 项目到本地服务器上出现错误. You cannot deploy the model because the localhost deployment server i ...
- Python的自定义属性访问跟描述器以及ORM模型的简单介绍
一 . 自定义属性访问 1.__getattr__ 作用:当我们访问属性的时候,如果属性不存在(出现AttrError),该方法会被触发. 2.__getattribute__ 作用:访问属性的时候, ...
- Java内存模型概念简单介绍,想深入自行百度
随机推荐
- [MSSQL]SQL Server里面导出SQL脚本(表数据的insert语句)(转)
最近需要导出一个表的数据并生成insert语句,发现SQL Server的自带工具并米有此功能.BAIDU一下得到如下方法(亲测OK) 用这个存储过程可以实现:CREATE PROCEDURE dbo ...
- 手把手教你画一个 逼格满满圆形水波纹loadingview Android
才没有完结呢o( ̄︶ ̄)n .大家好,这里是番外篇. 拜读了爱哥的博客,又学到不少东西.爱哥曾经说过: 要站在巨人的丁丁上. 那么今天,我们就站在爱哥的丁丁上来学习制作一款自定义view(开个玩笑,爱 ...
- 学习OpenCV,GPU模块
如何使用opencv的gpu库呢?我这两天一直在搞这个事情,环境的配置见上文(转载),这里我先举个简单的例子,实现这样的功能:host读入一幅图像,加载到GPU上,在GPU上复制一份然后下传到host ...
- 《java入门第一季》之面向对象面试题(代码块一网打尽)
<pre name="code" class="java">/* 代码块:在Java中,使用{}括起来的代码被称为代码块. 根据其位置和声明的不同, ...
- 报表打印错误:Forcing NLS_NUMERIC_CHARACTERS to: '.,' for XDO processing
HDSP0004 module: HDSP: 凭证打印 +----------------------------------------------------------------------- ...
- 【一天一道LeetCode】#6 ZigZag Conversion
一天一道LeetCode系列 (一)题目 The string "PAYPALISHIRING" is written in a zigzag pattern on a given ...
- 使用 Linux 的 strace 命令跟踪/调试程序的常用选项
原文:http://linoxide.com/linux-command/linux-strace-command-examples/作者: Raghu 在调试的时候,strace能帮助你追踪到一个程 ...
- 任务管理器中的PID找不到
PID是Process ID的简称,这对WINDOWS开发人员来说是非常有用的信息,但对于普通用户来说则根本不必去理会. 举个例子来说: 在网站发布的时候,需要安装IIS,那么iis的tcp的80 ...
- Linux配置文件系统及程序的限制 - ulimit
想象一个状况:我的 Linux 主机里面同时登陆了十个人,这十个人不知怎么搞的, 同时开启了 100 个文件,每个文件的大小约 10MBytes ,请问一下, 我的 Linux 主机的内存要有多大才够 ...
- sql记录去重(SQL查询或者删除表中重复记录)
.查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 select*from people where peopleIdin (select peopleIdfrom peopl ...