网络体系结构的概念 - 网络协议TCP - 红黑联盟
https://i.cnblogs.com/EditPosts.aspx?opt=1
网络体系结构的概念
1. 网络体系结构重要概念
网络体系结构涉及以下几个重要的概念。
① 协议:为计算机网络中的数据交换而建立的规则、标准或约定的集合。
② 通信协议:通信双方必须共同遵守的规则和约定就称为通信协议。通信双方对数据的理解需要建立在约定与协议之上。
③ 接口:相邻两层之间的边界,在接口处规定了低层向上层提供的服务以及服务所使用的形式规范语句(服务原语)。 www.2cto.com
④ 服务:某一层提供的功能,并能通过接口提供给其相邻上层。
⑤ 网络体系结构:对计算机网络的各层功能精确定义及其各层遵守协议的集合。
⑥ 协议栈:网络各层协议按层次顺序排列而成的协议序列。
IP网络层是两两路由器进行点到点通信, 中间没有跨越其他通信设备。点到点传输的优点是发送端设备送出数据后,它的任务已经完成,不需要参与整个传输过程,这样不会浪费发送端设备的资源。另外, 即使接收端设备关机或故障,点到点传输也可以采用存储转发技术进行缓冲。点到点传输的缺点是发送端发出数据后,不知道接收端能否收到或何时能收到数据。 IP及以下各层采用的是点到点传输。
⑧ 端到端:体现在逻辑上的两两连接。端到端是体现在网络传输层,比如要将数据从A传送到E,中间可能经过A->B->C->D->E,对于传输层来说,它并不知道B、C、D的存在,它只认为报文数据是从A直接到E的,这就叫做端到端。总之,端到端是由无数点到点实现和组成的。
www.2cto.com
2. 网络分层模型
分层能使复杂的问题简单化,网络分层也是基于此原理。网络分层简化了网络设计,提高网络互联的标准化程度。网络分层是上一层都依赖于下一层,只有最底层才是物理的实际通信,其他对等层是虚拟通信。分层原理与方法如下图所示,网络分层模型涉及以下一些术语。
① 实体:每一层中的活动元素,可以是任何可发送或接收信息的硬件或软件进程,许多情况下,实体就是一个特定的软件模块。
② 对等实体:位于不同机器上同一层中的的实体。
③ 服务提供者:n层(下层)是 n+1层(上层)的服务提供者。
④ 服务用户:n+1层(上层)是n层(下层)的服务用户。
⑤ 服务访问点(SAP):服务提供的地点,也即接口上相邻两层实体交换信息之处。
⑥ 服务和协议的关系:服务是垂直的,协议是水平的。n层的服务用户只能看见n层的服务而无法看见n层的协议,在n层协议控制下两个对等实体间的通信使得n层能够向n+1层提供服务,要实现n层协议,需要使用n-1层提供的服务。
图 网络分层模型图
互 联网两大网络模型(OSI模型和TCP/IP模型)都是基于分层原理实现的。通过网络分层,可以获得好处有:各层之间相互独立,相邻层间交互只通过接口, 使整个问题复杂度下降。结构上可分割开,各层都可以采用最合适的技术来实现。每一层功能简单,易于实现和维护。某一层改动时,只要不改变接口服务的关系, 其他层则不受影响,灵活性好。分层有利于促进网络协议的标准化。 www.2cto.com
3.OSI网络模型
(1)OSI分层模型
开 放式系统互联模型(OSI)是1984年由国际标准化组织(ISO)提出的一个网络参考模型。作为一个概念性框架,提出时希望以后不同设备制造商和应用软 件开发商遵循此标准。现在,此模型已成为计算机间和网络间进行通信的主要模型,目前使用的大多数网络通信协议的结构都是基于OSI模型或参照OSI模型。
OSI模型将网络分为七层,即物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,如下图所示。
图 OSI模型
对OSI分层模型各层解释如下:
① 物理层(Physical layer)是参考模型的最底层。该层是网络通信的数据传输介质,由连接不同结点的电缆与设备共同构成。物理层规定了激活、维持、关闭通信端点之间的机械 特性、电气特性、功能特性以及过程特性。该层为上层协议提供了一个传输数据的物理媒体。在这一层,数据的单位称为比特(bit)。
② 数据链路层(Data link layer)是参考模型的第2层。主要功能是:在物理层提供的服务基础上,在通信的实体间建立数据链路连接,传输以“帧”为单位的数据包,并采用差错控制与流量控制方法,使有差错的物理线路变成无差错的数据链路。 www.2cto.com
③ 网络层(Network layer)是参考模型的第3层。主要功能是:为数据在结点之间传输创建逻辑链路,通过路由选择算法为分组通过通信子网选择最适合的路径,以及实现拥塞控制、网络互联等功能。
④ 传输层(Transport layer)是参考模型的第4层。主要功能是向用户提供可靠的端到端服务,处理数据包错误、数据包次序,以及其他一些关键传输问题。传输层向高层屏蔽了下层数据通信的细节,因此,它是计算机通信体系结构中关键的一层。
⑤ 会话层(Session layer)是参考模型的第5层。主要功能是:负责维护两个结点之间的传输链接,以确保点到点传输不中断,以及管理数据交换等功能。
⑦ 应用层(Application layer)是参考模型的最高层,为操作系统或网络应用程序提供访问网络服务的接口。
(2)OSI模型特点有如下特点
属于分层网络互连模型,分为通信子网和资源子网两级结构。
只有物理层之间是直接连接的,对等层之间采用相同的对等协议。
发送数据时,数据从高层到低层;接收数据时,数据从低层到高层。
4. 网络分层数据流说明 www.2cto.com
下 图画出了网络分层时的数据流图。网络中各层把数据当作一个流来处理,每层都有自己的传输单位,物理层传输单位是比特流,而只有这一层是物理的数据 传输,其他层都是逻辑的;链路层传输单位是帧;网络层传输单位是分组;传输层传输是段。源主机应用层数据往下层传递时每一层要增加相应的首部,称为封装; 到达目的主机后数据往上层传递时需要再剥掉相应的首部,称为拆封。
图 网络分层数据流图
网络体系结构的概念 - 网络协议TCP - 红黑联盟的更多相关文章
- http://www.2cto.com/ 红黑联盟
http://www.2cto.com/ 红黑联盟,一个不错的学习或者开阔眼界的网站,内部由中文书写.比较适合国人.
- Day09: socket网络编程-OSI七层协议,tcp/udp套接字,tcp粘包问题,socketserver
今日内容:socket网络编程 1.OSI七层协议 2.基于tcp协议的套接字通信 3.模拟ssh远程执行命令 4.tcp的粘包问题及解决方案 5.基于udp协议的套接字 ...
- 红黑联盟 php相关资讯
http://www.2cto.com/tag/phpbanben.html
- ISO/OSI网络体系结构和TCP/IP协议模型
1. ISO/OSI的参考模型共有7层,由低层至高层分别为:物理层.数据链路层.网络层.传输层.会话层.表示层. 应用层.各层功能分别为: (1)物理层 提供建立.维护和拆除 ...
- 网络基础七层模型与TCP/IP协议
1.网络基础 1.1 什么是网络 网络就是计算机网络是一组计算机或网络设备通过有形 的线缆或无形的媒介如无线,连接起来,按照一定的 规则,进行通信的集合. 网络通信就是指终端设备之间通过计算机网络进行 ...
- 网络之OSI七层协议模型、TCP/IP四层模型
13.OSI七层模型各层分别有哪些协议及它们的功能 在互联网中实际使用的是TCP/IP参考模型.实际存在的协议主要包括在:物理层.数据链路层.网络层.传输层和应用层.各协议也分别对应这5个层次而已. ...
- 网络编程----socket介绍、基于tcp协议的套接字实现、基于udp协议的套接字实现
一.客户端/服务器架构(C/S架构) 即C/S架构,包括: 1.硬件C/S架构(打印机) 2.软件C/S架 ...
- 01网络编程(基础知识+OSI七层协议+TCP与UDP)
目录 01 网络编程 一.软件开发架构 1.1 CS架构 1.2 BS架构 二.网络理论前戏 2.1 简介 2.2 常见硬件 三.OSI七层协议(五层) 3.1 七层协议 3.2 五层协议 3.3 知 ...
- 网络编程—网络基础概览、socket,TCP/UDP协议
网络基础概览 socket概览 socket模块—TCP/UDP的实现 TCP/UDP总结 网络基础概览 osi七层协议各层主要的协议 # 物理层传输电信号1010101010 # 数据链路层,以太网 ...
随机推荐
- PIE SDK元素的选择和取消选择
1功能简介 在数据的查看等时候会用到元素的选择, 目前PIE SDK支持元素的选择和去取消选择功能,下面对这两种功能如何使用进行介绍. 2功能实现说明 2.1元素的选择 2.1.1 实现思路及原理说明 ...
- PIE SDK波段合成
1.算法功能简介 波段合成功能主要用于将多幅图像合并为一个新的多波段图像(即波段的叠加打包,构建一个新的多波段文件),从而可根据不同的用途选择不同波长范围内的波段合成 RGB 彩色图像. PIE支持算 ...
- 2019.03.27 读书笔记 关于GC垃圾回收
在介绍GC前,有必要对.net中CLR管理内存区域做简要介绍: 1. 堆栈:用于分配值类型实例.堆栈主要操作系统管理,而不受垃圾收集器的控制,当值类型实例所在方法结束时,其存储单位自动释放.栈的执行效 ...
- harbor 仓库搭建
一,介绍 Harbor是一个用于存储Docker镜像的企业级Registry服务. Registry是Dcoker官方的一个私有仓库镜像,可以将本地的镜像打标签进行标记然后push到以Registry ...
- easyUI--datagrid 实现按键控制( enter tab 方向键 )
1.表格定义时加上 onClickCell: onClickCell,2.定义列时加入编辑器3.引入 key.js 即可使用 enter 键 或者向下箭头 选中单元格下移 选中单元格上移 tab键 选 ...
- 从指定Dictionary中移除指定值项
void Removeltems(Dictionary<int, ltem> _dicltemMap, ltem _item) { List<ltem> keys=new Li ...
- Java Swing笔记
想到了解一下GUI主要是想用来做点小工具,记录一些笔记. 文本框自动换行和滚动条 private static JTextArea addJTextArea(JPanel panel, int x, ...
- 游戏源码--Unity开源Moba游戏-服务器-客户端完整V1.0
http://www.manew.com/thread-111658-1-1.html
- 【Linux】Linux系统启动过程
1.Linux系统的启动过程并不是大家想象中的那么复杂,其过程可以分为5个阶段: 内核的引导. 运行 init. 系统初始化. 建立终端 . 用户登录系统. 1.Linux系统的启动过程并不是大家想象 ...
- jQuery前端数据通用验证库,解放你的双手
这个简易的验证库,应该能完成90%的基本验证,包括失去焦点时的验证,以及点击提交按钮时的验证.后端的那我就无能为办了,只能是谁用就谁自个儿去写了:). 先上一段调用的代码吧,JS代码说少也不少了,就不 ...