OSI分层(7层)
- 物理层、数据链路层、网络层、运输层、会话层、表示层、应用层
TCP/IP分层(4层)
五层协议(5层)
五层结构的概述
- 应用层:通过应用进程间的交互来完成特定网络应用
- 数据:报文
- 协议:HTTP, SMTP(邮件), FTP(文件传送)
- 运输层:向两个主机进程之间的通信提供通用的数据传输服务。
- 数据:TCP:报文段,UDP:用户数据报
- 协议:TCP, UDP
- 网络层:为分组交换网上的不同主机提供通信服务
- 数据链路层:
- 物理层:
ARP地此讲解意向书:用到调用最终目标IP地此所对照的MAC地此的
应用层
域名系统DNS
例:某用户通过主机A浏览西安交大的主页 www.xjtu.edu.cn
1. A向本地域名服务器DNS查询
2. 如果DNS上有www.xjtu.edu.cn的记录,就立即返回IP地址给主机A
3. 如果DNS上没有该域名记录,则DNS向根域名服务器发出查询请求
4. 根域名服务器把负责cn域的顶级域名服务器B的IP地址告诉DNS
5. DNS向B查询获得二级域名服务器C的IP地址,最终迭代查询到www.xjtu.edu.cn的ip直接返回DNS
HTTP
请求报文

-
常见的 HTTP 重定向的方法有GET、POST、HEAD、PUT、DELETE、OPTIONS、TRACE、CONNECT;
-
GET:当老手机客服端要从产品保障质量器中显示另一两个能源共享时,动用GET 的工艺。GET 的工艺规范产品保障质量器将URL 固定的能源共享摆在崩溃数据帧的大部分,回送給老手机客服端,即向产品保障质量器post恳请另一两个能源共享。动用GET 的工艺时,post恳请产品因素和分别的值叠加在 URL 后,灵活运用一两个问号(“?”)代表性URL 的末尾与post恳请产品因素的已经,传输产品因素段长度受阻制。列如 ,/index.jsp?id=100&op=bind。
-
POST:当买家端给可不可能提供游戏工作器可不可能提供资料较多时可不可能运行POST 技巧,POST 技巧向可不可能提供游戏工作器提高动态统计资料文件,假如实现表格动态统计资料文件的提高,将动态统计资料文件提高给可不可能提供游戏工作器治疗。GET 一样于了解/查询网站资源的量资料,POST 会附上微信用户动态统计资料文件,一样于不断更新资源的量资料。POST 技巧将明确提出参数表封裝在HTTP 明确提出动态统计资料文件中,以标题/值的手段发现,可不可能传导大量的动态统计资料文件;
-
标准颈部:标准颈部由核心所在字/值对构造,每行一前一后,核心所在字和值用国外英文冒号“:”分仓缝。标准颈部通知怎么写服务性器业内于潜在pc客户端标准的信息,举例的标准头有:
- User-Agent:产生请求的浏览器类型;
- Accept:客户端可识别的响应内容类型列表;星号 “ * ” 用于按范围将类型分组,用 “ / ” 指示可接受全部类型,用“ type/* ”指示可接受 type 类型的所有子类型;
- Accept-Language:客户端可接受的自然语言;
- Accept-Encoding:客户端可接受的编码压缩格式;
- Accept-Charset:可接受的应答的字符集;
- Host:请求的主机名,允许多个域名同处一个IP 地址,即虚拟主机;
- connection:连接方式(close 或 keepalive);
- Cookie:存储于客户端扩展字段,向同一域名的服务端发送属于该域的cookie;
GET /search?hl=zh-CN&source=hp&q=domety&aq=f&oq= HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint,
application/msword, application/x-silverlight, application/x-shockwave-flash, */*
Referer: <a href="//www.google.cn/">//www.google.cn/</a>
Accept-Language: zh-cn
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; TheWorld)
Host: <a href="//www.google.cn">www.google.cn</a>
Connection: Keep-Alive
Cookie: PREF=ID=80a06da87be9ae3c:U=f7167333e2c3b714:NW=1:TM=1261551909:LM=1261551917:S=ybYcq2wpfefs4V9g;
NID=31=ojj8d-IygaEtSxLgaJmqSjVhCspkviJrB6omjamNrSm8lZhKy_yMfO2M4QMRKcH1g0iQv9u-2hfBW7bUFwVh7pGaRUb0RnHcJU37y-
FxlRugatx63JLv7CWMD6UB_O_r
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
响应报文

程序码由几位数码根据,第一次位数码标识出现异常的类别,实用的程序码有两大类目有以下几点随时:
- 1xx:表示服务器已接收了客户端请求,客户端可继续发送请求;
- 2xx:表示服务器已成功接收到请求并进行处理;
- 3xx:表示服务器要求客户端重定向;
- 4xx:表示客户端的请求有非法内容;
- 5xx:表示服务器未能正常处理客户端的请求而出现意外错误;
200 OK:表示客户端请求成功;
400 Bad Request:表示客户端请求有语法错误,不能被服务器所理解;
401 Unauthonzed:表示请求未经授权,该状态代码必须与 WWW-Authenticate 报头域一起使用;
403 Forbidden:表示服务器收到请求,但是拒绝提供服务,通常会在响应正文中给出不提供服务的原因;
404 Not Found:请求的资源不存在,例如,输入了错误的URL;
500 Internal Server
Error:表示服务器发生不可预期的错误,导致无法完成客户端的请求;
503 Service Unavailable:表示服务器当前不能够处理客户端的请求,在一段时间之后,服务器可能会恢复正常;
响应头部:响应头可能包括:
- Location:Location响应报头域用于重定向接受者到一个新的位置。例如:客户端所请求的页面已不存在原先的位置,为了让客户端重定向到这个页面新的位置,服务器端可以发回Location响应报头后使用重定向语句,让客户端去访问新的域名所对应的服务器上的资源;
- Server:Server 响应报头域包含了服务器用来处理请求的软件信息及其版本。它和 User-Agent 请求报头域是相对应的,前者发送服务器端软件的信息,后者发送客户端软件(浏览器)和操作系统的信息。
- Vary:指示不可缓存的请求头列表;
- Connection:连接方式;
-
针对于請求当今社会:close(知道了WEB 安全售后服务保障项目器主机可能POS机代销商安全售后服务保障项目器主机,在做好本届請求的运行后,段开连结,不等着图片本届连结的后期請求了)。keepalive(知道了WEB安全售后服务保障项目器主机可能POS机代销商安全售后服务保障项目器主机,在做好本届請求的运行后,做到连结,等着图片本届连结的后期請求);
-
谈谈异常来讲:close(接触已然关了); keepalive(接触增加着,等候图片某次接触的随后提起); Keep-Alive:比如浏览记录器提起增加接触,则该头顶是因为还望WEB 售后服务器ip增加接触多大时段(秒);比如:Keep-Alive:300;
- WWW-Authenticate:WWW-Authenticate响应报头域必须被包含在401 (未授权的)响应消息中,这个报头域和前面讲到的Authorization 请求报头域是相关的,当客户端收到 401 响应消息,就要决定是否请求服务器对其进行验证。如果要求服务器对其进行验证,就可以发送一个包含了Authorization 报头域的请求;
问题:
1. Http1.1与Http1.0的区别
http1.0使用非持久连接(短连接),而http1.1默认是持久连接(长连接),当然也可以配置成非持久连接。
FTP文件传送协议
运输层
应用 |
应用层协议 |
运输层协议 |
名字转换 |
DNS(域名系统) |
UDP |
文件传送 |
TFTP(简单文件传送协议) |
UDP |
路由器选择协议 |
RIP(路由信息协议) |
UDP |
IP地址配置 |
DHCP(动态主机配置协议) |
UDP |
网络管理 |
SNMP(简单网络管理协议) |
UDP |
远程服务器 |
NFS(网络文件系统) |
UDP |
多播 |
IGMP(网际组管理协议) |
UDP |
电子邮件 |
SMTP(简单邮件传送协议) |
TCP |
远程终端 |
TELNET(远程终端协议) |
TCP |
万维网 |
HTTP(超文本传送协议) |
TCP |
文件传送 |
FTP(文件传送协议) |
TCP |
- 端口
TCP和UDP都需要有源端口设置和重要性表层
(产品器产品器串口处:用16位来写出,即这个虚拟虚拟主机一共65536个产品器产品器串口处.序列号小于等于256的产品器产品器串口处可称普通产品器产品器串口处,如FTP是21产品器产品器串口处,WWW是80产品器产品器串口处等.产品器产品器串口处来标签这个产品或利用.1台虚拟虚拟主机可互相具备多家产品和保持多家无线连接.产品器产品器串口处(port)只是 数据传输层的利用过程插口.利用层的各级程序是经由应当的产品器产品器串口处这样才能与物流运输三维线参与交互设计.产品器一样 全都是经由用户所熟识的产品器产品器串口处号来辨认的)
服务于端
较为常用的熟记接口
应用程序 |
FTP |
TELNET |
SMTP |
DNS |
TFTP |
HTTP |
SNMP |
SNMP(trap) |
熟知端口 |
21 |
23 |
25 |
53 |
69 |
80 |
161 |
162 |
登记书串口 1024~49151
的电脑客户端
串口号由消费者程序最新进行。平均值面积 49152~65535
UDP
特点
- 无连接的(发送数据之前不需要建立连接,因此减少了开销和发送数据之前的时延)
- 尽最大努力交付(不保证可靠支付,因此主机不需要维持复杂的连接状态表)
- 面向报文的(UDP对应用层交下来的报文,添加完首部后就直接交付IP层。如果太长就会分片)
- UDP没有拥塞控制
- UDP支持一对一、一对多、多对一和多对多的交互通信
- UDP的首部开销小(只有8个字节,TCP有20个字节)
UDP报文
- 源端口:2字节 = 16bit = 0 ~ 65535
- 目的端口:2字节
- 长度:2字节
- 检验和:2字节
如果接受方UDP发现收到的报文中的目的端口号不正确(不存在对应端口号的应用进程),就会丢弃报文,并有网际控制报文协议ICMP(ping某个地址就是用的ICMP)发送“端口不可达”差错报文给发送方。
UDP访客数据库库报第一部检验检测和计算方式中会在UDP访客数据库库报前扩大1二个字节的。

TCP
特点
- 面向连接的运输层协议。
- 点对点(一对一)通信。
- 可靠交付。
- 全双工通信(TCP连接的两端都设有发送缓存和接收缓存,用来临时存放双向通信的数据)。
- 面向字节流。
TCP与UDP在下发 tcp协议时候软件的方试彻底有差异。TCP具体的下发 的tcp协议由收方列出的机会值和当前工作网路拥塞的程度上来影响一款tcp协议段是指有多少字节。而UDP下发 的tcp协议宽度由软件多线程列出。
TCP可靠传输工作原理
TCP接触的端点是指套接字(socket)或电源接口。套接字socket = (IP电话号码:端口设置号)
停止等待协议

每发送完一个分组就设置一个超时计时器。
- 注意:
1. 必须暂时保存已发送的分组的副本
2. 分组和确认分组都必须编号
3. 超市计时器设置的重传时间比数据在分组传输的平均时间更长一些
如果接收方接收到数据发送确认没有被发送方接收到,那么发送方超时后会重新发送分组,并且接收方收到重复的分组会丢弃并重传确认。
如果接收方收到的确认是已经接受过的,那么会无视这个确认。
缺点
暂停等待中合同协议(自然重传ARQ)固然单纯,不过端口转化率低。

无线信道采取率U = TD / (TD + RTT + TA)
连续ARQ协议和滑动窗口协议


TCP报文格式

- 源端口和目的端口 各占2字节
- 序号 4字节
- 确认号 4字节期望收到对方下一个报文的第一个数据字节的序号
- 数据偏移 4位
- 保留 6字节
- 紧急URG 当URG=1表示紧急指针有效
- 确认ACK
- 推送PSH
- 复位RST 当RST = 1时,释放连接并重新建立连接
- 同步SYN 当SYN = 1 ACK = 0时,表明这是一个连接请求报文段。
- 终止FIN FIN = 1,请求释放连接。
- 窗口
- 检验和
- 紧急指针
- 选项
TCP的三次握手

- 客户端TCP向服务端TCP发送一个特殊的TCP报文段,不包含应用层数据,报文中SYN=1,设置一个初始号client_isn,记录在报文段的序列号seq中。
- SYN报文段到达服务器后,为该TCP链接分配缓存和变量,并向客户端发送允许链接的报文段。其中,SYN = 1, ACK = client_isn+1,seq = server_isn;
- 客户端收到允许连接的报文后,客户端也给连接分配缓存和变量,客户端向服务端发送一个报文段,其中ACK = server_isn+1,SYN = 0,并且由于连接已经建立所以现在可以携带应用层数据。
TCP四次挥手
1. 客户端发送连接释放报文段,报文中FIN = 1, seq = u;
2. 服务端接收到连接释放报文后发出确认报文,其中ACK = 1; seq = v; ack = u + 1;
3. 服务端在发送完数据后,发送连接释放报文FIN = 1, seq = w, ack = u + 1;并停止向客户端发送数据。
4. 客户端收到连接释放报文后,发送确认报文, ACK = 1; seq = u + 1; ack = w + 1;并且进入等待2MSL,防止服务端没有接收到确认报文,重传报文。并且使连接产生的报文都消失。
TCP协议的连接是全双工连接,一个TCP连接存在双向的读写通道。
简单说来是 “先关读,后关写”,一共需要四个阶段。以客户机发起关闭连接为例:
1. 服务器读通道关闭
2. 客户机写通道关闭
3. 客户机读通道关闭
4. 服务器写通道关闭
TCP拥塞控制
拥塞控制和流量控制的区别
视频流量掌控应对的是点对点通信互相的(接受方和接受方)互相的的强度慢一致服务性,是由于接受方的用途系统程序识别的的强度慢不一些 很及时,而接受方的转码是现有的,就须要逃避接受的的强度慢过快而造成的毛病。拥塞掌控是是由于网上中的路由和线路发送的强度慢影响,要逃避网上的超负荷和做的掌控。
拥塞控制算法
拥塞把控好神经网络算法主耍其中包含了3个部份:慢发动、拥塞逃避和快发消息

- 慢启动
慢刚刚已经准备了梯度下降法的难点这就算,不用一刚刚已经准备了就送过量的数据资料,先探测系统两下网络信息的拥塞数量,也这就算说由小到大日渐增高拥塞工具栏的深浅。一般来说一刚刚已经准备了为6个MSS,后来轻松翻倍这样一来来增高,呈系数增长期。中仅1、慢打火服务器阶段很多个域值ssthresh,要是赶到域值就进来拥塞避开模试。她是第次种逃离完慢打火服务器的办法2、假如收快到一家丢包提醒,就将cwnd设为1而且从新刚刚已经准备了慢打火服务器阶段,不一定要把域值ssthresh设为现行cwnd值的一部分。3、假如收快到四次亢余的ACK,就程序执行次尽快重传而且进来尽快康复的情况,她是后来一类完慢打火服务器的阶段。
- 拥塞避免
进行拥塞防范表示cwnd值要花费是前的次碰见拥塞是的一般,于是候不可成倍增长,是将cwnd的值每一次的提升的MSS。停止的环节有两大类可能性:1、当发生超实时,将cwnd值设为5个MSS,且将ssthresh域值设为特定cwnd值的一般。2、当接受三大多余ACK时,将ssthresh域值设为特定cwnd值的一般,且将cwnd值设为特定cwnd值的一般加3,即ssthresh域值加3,且进行如何快速还原情况。
- 快速恢复
加快治愈过来即使指打开加快治愈过来前的一题材基本操作,现已ssthresh域值设为当下cwnd值的1/2以上,有时候将cwnd值设为当下cwnd值的1/2以上加3,即ssthresh域值加3,往后打开拥塞杜绝心态,即总是 cwnd的值加一MSS。
网络层
协议
- 地址解析协议 ARP
- 网际控制报文协议 ICMP
- 网际组管理协议 IGMP
IP
IP地址分类:
- A类:1.0.0.0~126.255.255.255,默认子网掩码/8,即255.0.0.0 (其中127.0.0.0~127.255.255.255为环回地址,用于本地环回测试等用途);
-
B类:128.0.0.0~191.255.255.255,默认页子网掩码/16,即255.255.0.0;
-
C类:192.0.0.0~223.255.255.255,缺省子网掩码/24,即255.255.255.0;
-
D类:224.0.0.0~239.255.255.255,一半于用组播
-
E类:240.0.0.0~255.255.255.255(当中255.255.255.255为全网视频电台位置),E类位置一半使用科学研究适用范围