| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> 计算机网络原理笔记(更新中......) -> 正文阅读 |
|
[网络协议]计算机网络原理笔记(更新中......) |
第一节 计算机网络基本概念定义:计算机网络是互连的,自治的计算机的集合 协议:数据交换过程中的规则 协议三要素:语法(信息的格式与结构), 语义(交换需要发控制信息以及其含义), 时序(交换信息的顺序,以及如何匹配适应彼此的速度) 计算机网络功能:硬件资源共享、软件资源共享、信息资源共享 分类:按覆盖范围分:个域网、局域网、城域网、广域网 ? ? ? ? ? ?按拓扑结构:星形、总线、环形等 ? ? ? ? ? ?按交换方式:电路交换网络、报文交换网络、分组交换网络 ? ? ? ? ? ?按网络用户属性:公用网、私有网 第二节 计算机网络结构①网络边缘:所有端系统 ②接入网络:网络边缘的端系统与网络核心的连接与接入 ③网络核心:由通信链路互连的分组交换设备构成的 网络的作用是实现网络边缘中主机之间的数据中继与转发 第三节 数据交换交换结点和传输介质的集合称为通信子网,即网络核心 ①电路交换 通过中间交换结点,为两台主机之间建立一条专用通信线路称为电路,结束后拆除 特点:独占线路,实时性高,信道利用率低 ②报文交换 以报文为单位在交换网络的各结点之间以存储-转发方式传送。 特点:不需要建立连接,转发时才占用相应的信道,需要缓冲存储,报文需要排队,增加延时。 ③分组交换 将一个完整报文拆分成若干分组,分组传输过程通常也采用存储-转发。 特点:交换设备存储容量要求低,交换速度快,可靠传输效率高,更加公平 分组长度的确定:延迟时间,误码率 第四节 计算机网络性能1.速率与带宽 速率:单位时间传送数据量(bit/s)也叫传输速率或数据速率 带宽:信号具有的频带宽度,频率范围,Hz 2. 时延 数据从网络中一个结点到另一个结点所需要的时间 分类:结点处时延、排队时延、传输时延、传播时延 3. 时延带宽积 一段物理链路的传播时延与链路带宽的乘积 4. 丢包率 评价网络性能指标,反映拥塞程度 丢包率=丢失分组总数/发送分组总数 5. 吞吐量 单位时间从源主机通过网络实际送达数据量 第五节 计算机网络体系结构分层:功能划分若干层,层次按协议信息交换 体系结构:划分层次及各层协议的集合 ①OSI参考模型 应用层、表示层、会话层、传输层、网络层、数据链路层、物理层 ②TCP/IP参考模型 应用层、运输层、网际层、网络接口层 ③五层参考模型 应用层、传输层、网络层、链路层、物理层
第一节?计算机网络应用体系结构三种类型 1. 客户/服务器(C/S)结构 通信只在客户与服务器之间进行,客户与客户之间不进行直接通信 2. P2P(Peer to Peer)结构 每个对等端都同时具备C/S应用的客户与服务器的特征,是一个服务器与客户的集合体,对等端之间直接通信(即可以请求服务也可以提供服务) 3. 混合结构 既有中心服务器的存在,又有对等端(客户)间的直接通信 第二节 网络应用通信基本原理C/S通信基本原理:服务点运行的是服务器进程,被动地等待客户请求服务;客户端运行地是客户进程,主动发起通信,请求服务器进程提供服务。应用进程间遵循应用层协议交换应用层报文。 第三节 域名系统(DNS)一、层次化域名空间(便于查找,便于管理) ? 二、域名服务器1. 域名解析 将域名映射为IP地址地过程 2. 域名服务器 为了实现域名解析,需要建立分布式数据库(就是很多服务器),存储网络中域名与IP地址地映射关系数据,这些数据库存储在域名服务器上,域名服务器根据用户地请求提供域名解析服务。 3. 域名服务器分类 根域名服务器、顶级域名服务器、权威域名服务器、本地域名服务器 三、域名解析过程
?2.迭代查询:如果查不到告诉客服端,客服端在去另一个服务器查询 ?第四节万维网应用一、万维网应用结构?二、HTTP概念:超文本传输协议,定义浏览器如何向web服务器发送请求以及Web服务器如何向浏览器进行响应。 版本:HTTP/1.0和HTTP/1.1 HTTP连接: 非持久连接(建立TCP连接,发送一个请求,服务器响应后,TCP连接就释放)一个连接传输一个对象 持久连接(只建立一个TCP连接,传输多个对象) HTTP报文
?三、CookieCookie中文名称为小型文本文件,指某些网站为了辨别用户身份、进行会话跟踪而储存在用户本地终端上的数据。 ? 第五节 Internet电子邮件1.电子邮件系统结构 ?2.SMPT SMTP是Internet电子邮件中核心应用层协议,实现邮件服务器之间或用户代理到邮件服务器之间的邮件传输。 ?3.电子邮件格式与MIME ?4.邮件读取协议 ①第三版的邮局协议(Post Office Protocol-Version 3,POP3)客服端服务器形式,邮件下载到本地 第六节 FTP文件传送协议(FTP):在互联网的两个主机间实现文件互传的应用层协议。 第七节 P2P应用P2P应用的优势:充分聚集利用了端系统(对等方主机)的计算能力以及网络传输带宽,对服务器的以来很小 第八节 Socket编程基础Socket接口模型(调用传输层提供的网络服务) ?Socket接口可以调用UDP,TCP服务 第三章 传输层第一节 传输层的基本服务一、传输层功能核心任务是为应用进程之间提供端到端(从一个应用进程到另一个应用进程)的逻辑通信服务 主要功能包括: 传输层协议提供逻辑通信服务; 二、传输层寻址与端口1. 用统一的寻址方法对应用进程进行识别——端口号。? (根据端口号判断数据给哪一个应用进程) 3. 传输层端口号为16位整数,包含三类端口: (1)熟知端口号,数值为0~1023 。(分配给固定的应用程序,一般指服务端程序,例:POP3:TCP 110,SMTP:TCP 25,HTTP:TCP 80,DNS:UDP 53端口) 三、无连接服务与面向连接服务1. 无连接服务——数据传输之前无需与对端进行任何信息交换(即“握手”),直接构造传输层报文段并向接收端发送。(无法确定相关信息)——UDP 2. 面向连接服务——在数据传输之前,需要双方交换一些控制信息,建立逻辑连接,然后再传输数据,数据传输结束后还需要再拆除连接。——TCP 第二节 传输层的复用与分解多路复用与多路分解:是传输层的一项基本功能,支持众多应用程序共用同一个传输层协议,并能够将接收到的数据准确交付给不同的应用进程。 多路复用:发送方每个主机都由多个应用进程要运行,每一个对应一个端口把要发送的数据放到端口当中进行排队,传输层检查每一个端口看哪一个端口有数据了取出来然后进行封装,把封装的数据教给下面的网络层 一、无连接的多路复用与多路分解?UDP套接字:<目的IP地址,目的端口号> 二、面向连接的多路复用与多路分解TCP套接字(标识一条TCP连接):<源IP地址,源端口号,目的IP地址,目的端口号> 第三节 停——等协议与滑动窗口协议(解决如何保证通信的可靠性的问题) 一、可靠数据传输基本原理实现可靠数据传输的措施: 1. 差错检测:利用差错编码实现数据包传输过程中的比特差错检测。 二、停-等协议停-等协议的主要特点就是每发送一个报文段后就停下来等待接收方的确认。 停-等协议的基本工作过程是: 三、滑动窗口协议1. 停-等协议的主要性能问题: 2. 解决方法: ?两种具有代表性的滑动窗口协议: 2.选择重传(Selective Repeat,SR)协议: 第四节 用户数据协议(UDP)用户数据报协议UDP是Internet传输层协议,提供无连接、不可靠、数据报尽力传输服务。 一、UDP数据报结构1. 源和目的端口:用于UDP实现复用与分解。 二、UDP校验和?计算校验和: 第五节 传输控制协议(TCP)一、TCP报文段结构源端口:发送该报文的发送方应用程序端口号地址 二、TCP连接管理连接建立——三次握手(三次通信) 1. SYN连接请求(第一次握手,客户端向服务端发送SYN连接请求或者叫做同步请求) 刚开始客户端的端口是关闭的,要发送连接请求时必须要进入打开状态,当请求发送之后进入SYN-SENT状态,当收到对方的确认信息再发送一个确认信息之后,进入ESTAB-LISHED状态。 客户端向服务端发送连接请求,首先服务端要打开监听端口进入监听端口,客户端打开临时端口 TCP断开连接的过程——四次挥手(双方要进行四次的数据交换) ?数据传输完成之后要进行TCP连接断开,连接释放请求可以由A发起也可以由B发起。以A发送连接释放请求为例,首先A发送一个连接释放请求,在这个报文中FIN位置为1,表示这是一个连接释放请求,同时携带一个序号,A发送给B的所有报文都要携带序号seq=u,B收到之后返回一个确认信息。此时,A到B的连接断开,B到A的连接还没有断开,当B到A的数据传输完成之后,B向A发送释放连接请求,A向B发送释放连接请求的确认信息,这之后A进入TIME-WAIT阶段,B马上关闭连接。 三、TCP可靠数据传输1.TCP的可靠数据传输实现机制包括差错编码、确认、序号、重传、计时器等。 2.TCP的可靠数据传输时基于滑动窗口协议、但是发送窗口大小动态变化。 四、TCP流量控制1. TCP协议利用窗口机制实现流量控制,但不是简单的滑动窗口协议。 2. TCP连接建立时,双方都为之分配了固定大小的缓冲空间;TCP的接收端只允许另一端发送其缓冲区所能接纳的数据。 五、TCP拥塞控制1. 窗口机制:通过调节窗口的大小实现对发送数据速率的调整。 2. 窗口调整的基本策略: 3. TCP的拥塞控制算法:包括了慢启动、拥塞避免、快速重传和快速恢复4部分。 |
|
网络协议 最新文章 |
使用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 11:47:19- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |