| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> 计网学习笔记 -> 正文阅读 |
|
[网络协议]计网学习笔记 |
目录 第1章 计算机网络体系结构1.1 计算机网络的概述 计算机网络的概念 计算机网络的定义:多个独立的计算机通过通信线路和通信设备互连起来的系统,以实现彼此交换信息(通信)和共享资源的目的。 计算机网络功能:(1) 数据通信 。(2) 资源共享 。(3)并行和分布式处理(数据处理)。(4)提高可靠性。(5)负载均衡。 计算机网络的分类 按网络的分布范围来分,网络可分为广域网WAN,城域网MAN,局域网LAN,个人区域网PAN。 计算机网络基本网络拓扑结构有五种: 总线形、星形、树形、环形、网状形 。 计算机网络按使用者分类,可分为公用网,专用网。 计算机网络从逻辑功能上可以分为资源子网和通信子网。 计算机网络的性能指标 带宽 : 时延 是衡量计算机网络性能的一个重要指标,数据经历的总时延一般是指 发送时延、传播时延、排队时延和处理时延 。 吞吐量 : 速率(数据率,比特率) :bit/s 信道利用率 : 1.2 计算机网络体系结构与参考模型 网络体系结构:计算机网络的各个层次及其相关协议的集合,是对计算机网络所完成功能的精确定义。 接口数据单元IDU、服务数据单元SDU、协议数据单元PDU以及他们之间的关系。 协议 网络协议:为主机与主机之间、主机与通信子网之间或子网中各通信节点之间的通信而使用的,是通信双方必须遵守的,事先约定好的规则、标准或约定。 网络协议的三要素: 语法、语义、时序(同步) 。 网络协议采用分层方式的优点:各层之间是独立的。灵活性好。结构上可分隔开。易于实现和维护。有利于标准化工作。 协议族:协议栈,许多成员协议的集合。 接口 相邻实体间的通信是通过它们的边界进行的,该边界称为相邻层间的接口,每一层都定义了向它的相邻高层提供的一组服务。 服务由服务访问点(SAP)提供上层使用,某一层的SAP就是上一层可以访问本层服务的地方,每个SAP都有一个唯一属于它的地址。服务访问点SAP:同一系统中相邻两层的实体进行交互的地方。 服务 服务原语主要分为:请求原语,指示原语,响应原语,证实原语。 按是否面向连接可将服务分为面向连接和面向无连接的服务。 面向连接的网络服务 :基于分组交换的虚电路方式。为数据传输建立一条虚电路,这条电路在整个数据传输过程中都是有效的,属于这次数据传输过程的所有包都将按顺序沿着这条电路传输。优点:顺序性、差错和流量控制,使用较少的协议控制信息。缺点:一旦连接建立,路由就不再具有灵活性。 面向非连接的网络服务 :基于分组交换的数据报方式。每个包被当作一个独立的单元,不提供逻辑连接。优点:服务简单,不同路径并行传输。缺点:可靠性低,所需的额外开销大。不按顺序传输。 面向连接和面向无连接的服务主要的区别有两条:其一,面向连接的服务进行数据传送分为三个阶段。其二,面向连接的通信具有数据的保序性,而面向无连接的通信不能保证接收数据的顺序与发送数据的顺序一致。 OSI参考模型 OSI参考模型的系统结构是层次,从底层到高层依次是 物理层、数据链路层、网络层、运输层、会话层、表示层和应用层 。 1)物理层:实现透明地传送比特流。负责建立、保持和拆除物理链路;比特如何编码。传送单位是比特(bit)。 2)数据链路层:实现无差错帧传送,包括把原始比特流分帧、排序、设置检错、确认、重发、流控等功能;负责建立、维护和释放数据链路;传送信息的单位是帧(frame)。 3)网络层:实现分组传送,选择合适的路由器和交换节点,透明地向目的站交付发送站所发送的分组或包。传送的信息单位是分组或包(packet)。路由选择、拥塞控制与网络互连。 4)传输层:实现端到端的数据发送,透明地传送报文(message)。 5)会话层:为完成一个相对独立的统一任务而进行的双方按序传送报文和有关的非传送操作的过程。需要解决会话的顺序,同步问题,活动管理。会话层的功能是为进行通信的高层之间建立、维护一个会话连接,并对高层之间的通信进行同步控制。 6)表示层:主要解决用户信息的语法表示问题。数据格式变换、数据加密与解密、数据压缩与恢复。 7)应用层:解决应用的共性问题:包括应用基础和典型应用。 TCP/IP参考模型 TCP/IP参考模型有四层,每一层完成的主要功能和使用的主要协议如下: 第一层: 网络接口层 ,对应于基本网络硬件,并规定了怎样把数据组织成帧及计算机怎样在网络中传输帧,这一层和各物理网络的具体实现有关,只要能够传输IP分组的任何协议都是允许的,如局域网MAC层协议Ethernet, Token Ring, 串行链路点点协议PPP等; 第二层: 网际层 ,规定了互联网中传输的包格式及从一台计算机通过一个或多个路由器到最终目的地的包转发机制,主要解决路由选择、拥塞控制和网络互连等问题,使用的主要协议有IP(网际协议,用于传输IP分组,实现的是不可靠的无连接数据报服务),ICMP(网际控制报文协议,使用ICMP报文传送一些控制信息)等; 第三层: 运输层 ,负责在源主机和目的主机的应用程序间提供端-端的数据传输服务,使用的主要协议有TCP(传输控制协议,提供可靠的端-端的字节流服务),UDP(用户数据报协议,一种简单的面向数据报的传输协议); 第四层: 应用层 ,面向用户的各种应用,包含了所有的高层协议,常见的如文件传输协议FTP,虚拟终端协议TELNET, 简单邮件传输协议SMTP,域名系统DNS(负责域名解析),简单网络管理协议SNMP,访问WWW站点的超文本传输协议HTTP等。 第2章 物理层2.1 通信基础 数据通信系统可以分为源系统(信源),传输系统(信道)和目的系统(信宿)三大部分。 在物理层,数据传输的基本单位是 比特 。在数据链路层,数据传输的基本单位是帧。 信道带宽 :信道的发送和接受两端传输比特信号的最大速率称为信道的带宽。单位为赫兹Hz。 信道容量 :单位时间内信道上所传输的最大比特数。单位为每秒比特数b/s。 基带传输,宽带传输 基带传输:利用数字通信信道直接传输数字信号的方法称为基带传输。适用于近距离传输。 宽带传输:在数据通信技术中,利用模拟通信信道,通过调制解调器传输模拟数据信号的方法称为宽带传输。适用于远距离传输。 从通信的双方信息交互的方式来看,可以有 单工通信,半双工通信和全双工通信 三种基本方式。 1) 数字数据编码为数字信号 2) 数字数据调制为模拟信号 3)模拟数据编码为数字信号 4)模拟数字调制为模拟信号 常用的分组交换方法分为:数据报和虚电路?。 2.2?传输介质 导向传输介质 1)双绞线(非屏蔽UTP,屏蔽STP): 2)同轴电缆: 3)光纤: 2.3 物理层设备 中继器 :物理层设备。用于扩展局域网的硬件设备,将信号放大并传输到另一个网段。中继器用于扩大广播域,放大信号。 集线器 :一种特殊的中继器。简单的集线器可将总线型的连线方式改造为星型。复杂的集线器可以用做网桥或路由器的替代品减少网络拥塞。高级的集线器为FDDI、帧中继、ATM网络提供了非常高速的连通性。 第3章 数据链路层3.1 数据链路层的功能 数据链路层主要提供如下服务 功能 :线路规程(通信双方的协议),差错控制(发送-校验-应答的重发模式,控制和纠正错误),流量控制(防止发送端发送数据过快,造成数据丢失和信道拥挤)。 数据链路层的必须解决的三个基本问题是 封装成帧、透明传输、差错检测 。 流量控制 :一组过程,告诉发送方在等待接收方的应答之前,最多可以发送多少数据。流量控制的2个要点:(1)数据流不能使接收方过载。(2)应答。 差错控制 :错误检测(CRC)和重传(ARQ)。 自动重传请求(ARQ) :即自动请求重发,当接收方接收到发送方的数据包后,如果发现数据传输出错,则返回一个否认响应,接收方根据该响应自动重发该数据包。数据重传的3种情况:帧破坏,帧丢失,应答丢失。 3.2 组帧 字符计数法? ? ?在帧头部使用一个计数字段来标明帧内字符数。 字符填充的首尾界定符法? ? ? ? 使用一些特定的字符来定界一帧的开始和结束,在信息位使用填充字符防止误判。 零比特填充的首尾标志法? ? ? ?使用比特01111110进行首位标记,而在信息位为了防止误判,如果遇到有连续的5个1时,自动的在末尾添加一位0,之后在接收端,有连续的五个1去掉一位0即可。 违规编码法? ? ?例如,曼彻斯特编码中利用未使用到的电平来表示起始和终止。 3.3 差错控制 差错控制通过两种途径解决:通过检错码编码来发现传输差错。通过差错恢复达到正确传输的目的。 3.4 流量控制与可靠传输机制 流量控制和差错控制通常有2种实现技术:停止等待协议,滑动窗口协议。 停止等待协议 :发送方每发送一帧后就等待一个应答帧,只有当接到应答帧之后,发送方才发送下一帧,直到发送方发送一个传输结束帧(EOT)。优点:简单。缺点:效率低。线路上总是只有一帧,距离长时,等待ACK时间长。 滑动窗口协议 :发送方在收到应答消息前可以发送若干帧,即链路上可能同时存在多个数据帧。一个ACK帧可以对多个数据帧的接收进行确认。使用窗口技术。 滑动窗口协议中差错控制有两种实现自动重复请求(ARQ)的技术:回退n自动重复请求、选择拒绝自动重复请求。 单帧滑动窗口和停止 -等待协议 停止-等待协议是发送一个帧必须等待到确认帧的返回,才可以继续传送。 多帧滑动窗口和后退N帧协议(GBN) 后退N帧协议是不必收到上一个帧的ACK(确认帧)后才开始发送。但接收方只能按顺序接收,如果没传成功,则需要将没有确认的帧全部重传。 go-back-n策略: 回退 N:如果发送方发送了前 5 个分组,而中间的第 3 个分组丢失了。这时接收方只能对前两个分组发出确认。发送方无法知道后面三个分组的下落,而只好把后面的三个分组都再重传一次。这就叫做 Go-back-N(回退 N),表示需要再退回来重传已发送过的 N 个分组。 多帧滑动窗口和选择重传协议(SR) 只会重传出现差错的帧或计时器超时的数据帧。 信道利用率 是指发送方在一个发送周期的时间内,有效发送数据所需要的时间占整个发送周期的比率。发送方从开始发送数据到收到第一个确认帧为止,成为一个发送周期,记作T,发送法在这个周期内共发送L比特的数据,发送方的数据传输率为C,信道利用率就为(L/C)/T。 信道吞吐率 =信道利用率*发送方的发送速率。 3.5 介质访问控制 MAC:介质访问控制子层,它负责处理如何接入到相关的传输介质和进行介质共享访问。 信道划分介质访问控制 在现代通信过程中常用的信道复用技术有时分、频分、波分、码分四种复用。其中:光纤使用波分复用,有线电视使用频分复用,第三代移动通信使用码分复用。 1)频分多路复用(FDM):所有用户在同样的时间占用不同的带宽资源。 2)时分多路复用(TDM):一种多路复用技术,它将信道的传输时间划分成多个时间片,多个信源轮流使用时间片,在每一时间片中传输某一路子信号。一般用来传输数字信号。 3)波分多路复用( WDM ): 4)码分多路复用(CDM ) : 码分多址 随机访问介质访问控制 1)ALOHA协议 纯ALOHA协议 :当网络中的任何一个站点需要发送数据时,可以不进行任何检测就发送数据。 时隙ALOHA协议 :将时间划分为一段等长的时隙,只能在每个时隙的开始时才能发送一个帧。减少发送冲突的可能性。 2)CSMA协议 1-坚持CSMA : 非坚持CSMA: p-坚持CSMA : 3)CSMA/CD CSMA/CD即载波侦听多路访问与冲突检测技术 4)CSMA/CA协议 轮询访问介质访问控制:令牌协议 令牌环网:拥有令牌的站点才能发送数据,一次发送一帧。优点:解决以太网可能出现的冲突重试造成的无法预测的延迟。访问模式是令牌传递。环形拓扑,单向通信。 令牌总线网:将以太网的总线拓扑和令牌环的可预测的延迟特性相结合,物理上是一条总线,逻辑上使用令牌环。将各站点构成一个逻辑环,令牌在逻辑环上传递。 3.6 局域网 局域网的基本概念和体系结构 局域网的特性由3个因素决定, 拓扑结构,传输介质,介质访问控制方式。 主要有4种结构的局域网:以太网、令牌总线、令牌环网、光纤分布式数据接口FDDI。 以太网的主要特点:以太网标准由IEEE802.3扩展而来,是目前应用最广泛的一类局域网,属于 基带总线局域网 。以无源电缆作为总线来传送数据帧,并以曾经在历史上表示传播电磁波的以太网(Ether)来命名。当不涉及到网络的协议细节时, 将802.3简称为以太网 。以太网的 核心技术是采用CSMA/CD (载波侦听多路访问/冲突检测)通信控制机制。以太网 采用无连接的工作方式,提供不可靠的服务 。以太网的连接距离有一定限制。以太网MAC帧的 最大帧长度为1518字节。 网卡分类:按带宽分:10M,100M,10M/100M自适应,1000M。按总线分:PCI网卡,ISA网卡,EISA网卡。网卡的 MAC地址是48位的。 MTU: 最大传送单元,为数据链路层帧中的数据字段最大字节数 速率达到或超过100MB/s的以太网称为 高速以太网 。 IEEE 802.11 在IEEE.802标准中,IEEE802.11是无线局域网标准。 无线自组网: 无线网络无固定基础设施(AP),由一些处于平等状态的移动站之间相互通信组成的临时网络。 无线局域网可分为两大类,第一类是 有固定基础设施 的,在基本服务集BSS中包括一个基站和若干个移动站;另一类是 无固定基础设施 的,它没有基站而是由一些处于平等状态的移动站间相互通信组成的临时网络,我们称它为无线自组网。 3.7 广域网 广域网的基本概念 就规模而言, Internet属于广域网 **PPP协议:**点对点协议,是为在同等单元之间传输数据包的简单链路而设计的数据链路层协议。用户和ISP进行通信时所使用的数据链路层协议。面向字节,只支持全双工链路。 PPP协议在 异步传输(逐个字符传送) 时,为实现透明传输而使用 字节填充法 PPP协议为实现透明传输,在异步传输和同步传输时使用了不同的方法。PPP在 同步传输(一连串比特连续传送) 时使用了0比特插入删除技术( 零比特填充法 ) HDLC协议 :高级数据链路控制,有3类帧:信息帧、监管帧、无编号帧。标志域为" 01111110"。表示帧的开始和结束。HDLC的协议信息帧使用了编号和确认机制,能够提供可靠传输。由于TCP提供可靠服务,现实中常用PPP协议而不是HDLC协议。 3.8 数据链路层设备 网桥的概念及其基本原理 网桥 :数据链路层设备,用于连接多个网段,将两个相似的网络连接起来,并对网络数据的流通进行管理。应用的场合:互联两个采用不同数据链路层的协议、不同传输介质与不同传输速率的网络。以接收、存储、地址过滤与转发的方式实现两个互联网络之间的通信。 局域网交换机及其原理 以太网交换机中的端口/MAC地址映射表是交换机在数据转发过程中通过学习动态建立的 交换机优于网桥 两种交换模式: 直通式交换机 , 存储转发式交换机 直通式交换机:只检查帧的目的地址,速度快,缺乏智能性和安全性 存储转发式交换机:缓存到高速缓存器,并检查是否正确,错误则丢弃,可靠性高,延迟较大 第4章 网络层
? 第5章 运输层5.1 传输层提供的服务 传输层的地位:为源主机上的进程和目的主机上的进程提供可靠透明的数据传送,使其不关心具体通信细节。传输层是协议层最核心的一层。 传输层的功能:1)端到端的报文传递。2)服务点的寻址。3)报文的拆分、组装。4)连接控制。 在传输层,可靠传输包括如下四个方面:差错控制、次序控制、丢失控制、重复控制。 传输层一个很重要的功能就是 复用和分用 。 复用 :应用层不同进程的报文通过不同的端口向下交到传输层,再往下就共用网络层提供的服务。 分用 :当这些报文到达目的主机后,目的主机的传输层就使用其分用功能,通过不同的端口将报文分别交付到相应的进程。 熟知的端口号 套接字 =(主机 IP地址,端口号) 5.2 UDP协议 UDP数据报 UDP:?用户数据报协议,是一种无连接的,提供不可靠交付的运输层协议。进程的每个输出操作刚好产生一个UDP数据报,进而导致一个IP数据报的发送。 源端口: UDP校验 5.3 TCP协议 TCP: 传输控制协议,提供面向连接的运输服务。提供一种可靠的面向连接的字节流传输层服务,TCP将用户数据打包形成报文段;它发送数据后启动一个定时器;通信的另一端对收到的数据进行确认,对乱序的数据重新排列,丢弃重复数据;TCP提供端到端的流量控制,并计算和验证一个强制性的端到端检查和。网络应用程序Telnet、FTP、SMTP都使用TCP。 TCP报文段 一个TCP报文段分为TCP首部和TCP数据部分 源端口: TCP连接管理 TCP连接的建立:?三次握手 TCP可靠传输 TCP使用了 校验、序号、确认和重传 等机制来保证接收方的进程从缓存区读出的字节流与发送方发出的字节流 完全一样 。 重传又分为超时和冗余ACK。 超时 :超时重传时间,加权平均往返时间RTTs 冗余ACK :发送方收到对同一个报文段的 3 个冗余ACK 时,就可以认为报文段 已经丢失。 TCP流量控制 TCP流量控制:在数据链路层或传输层中,控制发送方的数据传输速率,从而不超过接收方的接收能力,以免数据被丢弃。流量控制的方法有停等协议和滑窗协议。 TCP采用可变长度的滑动窗口进行流量控制。 TCP拥塞控制 拥塞 :拥塞现象是指到达通信子网中某一部分的分组数量过多,使得该部分网络来不及处理,以致引起这部分乃至整个网络性能下降的现象。严重时甚至导致网络通信业务陷入停顿,即出现死锁现象。 发送窗口的上限值=min[接收窗口rwnd,拥塞窗口cwnd] TCP进行的拥塞控制,其工作过程可以分为3个阶段:开始时为 慢开始(慢启动) 阶段,拥塞窗口cwnd的初始值为1,随着传输轮次增加,cwnd 按指数规律增长 ,当拥塞窗口cwnd增长到门限值ssthresh时,进入拥塞避免阶段,此时拥塞窗口 按线性规律增长 , 当网络出现超时,拥塞窗口变为1,又重新执行慢开始算法。 在 慢开始 和 拥塞避免 算法的基础上,又增加了两个新的TCP拥塞控制算法是快重传和快恢复 。 拥塞控制和流量控制的区别与联系 拥塞控制所要做的都有一个前提,就是网络能够承受现有的网络负荷。 拥塞控制是一个全局性的过程 ,涉及到所有的主机、所有的路由器,以及与降低网络传输性能有关的所有因素。 流量控制往往指在给定的发送端和接收端之间的点对点通信量的控制 。流量控制所要做的就是抑制发送端发送数据的速率,以便使接收端来得及接收。 第6章 应用层6.1 网络应用模型 应用层:应用层实现的是通常的网络服务,包含用户所需要的任何功能。 网络应用模型 1) 客户/服务器模型(C/S):在网络平台上实现应用的一种传统计算模式。特点是软件从服务器下载到工作站上,在工作站上进行处理。 2) P2P模型(对等网,Peer to Pee):每台客户机实现平等操作,共享彼此的信息资源和硬件资源,例:Windows95/98以上版本。灵活方便,但难管理和控制、安全性较低,适合小企业内部和家庭。 6.2 域名系统(DNS) DNS: 因特网命名系统,用来把便于人们使用的机器名字转换为IP地址。域名与IP地址一一对应。 层次域名空间 域名服务器 域名解析过程 域名的解析 把域名映射成IP地址或把IP地址映射成域名的过程,前者称为 正则解析 ,后者称为 反向解析 递归查询: 递归与迭代相结合方式: 6.3 文件传输协议(FTP) FTP提供交互式的访问,允许客户指明文件的类型与格式,并允许文件具有存取权限。适用于异构的网络。 FTP的工作原理 控制连接 : 端口号 为 21 数据连接 : 端口号 为 20 6.4 电子邮件 电子邮件系统的组成结构 电子邮件是一种异步通信方式。由用户代理,部件服务器和电子邮件使用协议组成 6.5 万维网(WWW) WWW: 万维网,一个大规模的,联机式的信息储藏所 万维网的内核部分由以下三个标准构成 URL: 统一资源定位器,用于在全网范围内确定一个网页。其一般格式为:协议名://主机域名/路径名 HTTP: 超文本传送协议,定义了浏览器怎样向万维网服务器请求万维网文档,以及服务器怎么把文档传送浏览器 HTML: 超文本标记语言 HTTP Web浏览器同Web服务器之间的应用层通信协议是HTTP,默认端口号 80 HTTP是无状态的 Cookie:跟踪用户的活动 HTTP采用TCP作为运输层协议 ,保证了数据的可靠传输,但 HTTP本身是无连接 的,即交换HTTP报文之前不需要先建立HTTP连接。 HTTP即可以使用 非持久连接 ,也可以使用 持久链接 。持久连接又分为非流水线和流水线两种方式。 HTTP报文分为请求报文和响应报文 |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 10:17:12- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |