发表于: 2018-04-07 21:27:58
1 563
今天完成的事情:
今天去看了洗髓换骨营的的《计算机网络》
下面是今天做的笔记
一、TCP
1.TCP——TCP运输连接管理
运输连接的三个阶段
①连接建立(三次握手)
②数据传送
③连接释放
需要解决的问题:
①要使每一方能够确知对方的存在
②要允许双方协商一些参数(如最大报文段长度、最大窗口大小、服务质量)
③能够对运输实体资源(如缓存大小、连接表中的项目)进行分配
2.TCP——TCP报文
UDP与TCP
UDP:传送数据之前不需要先建立连接。对方的运输层在接收到UDP报文后,不需要给出任何确认
TCP:提供面向连接的服务。由于TCP要提供可靠的、面向连接的运输服务,因此不可避免地增加了许多的开销。这不仅使协议数据单元的首部增大很多,还要占用许多的处理机资源
连接:
TCP连接的端点叫套接字
套接字{socket1,socket2}
{(IP1::port1),(IP2:port2)}
TCP报文段:
大小:20字节的固定首部
端口:运输层和与应用层之间的接口个数:2^16
序号:TCP连接中传送的数据流中的每一个字节都编上一个序号
确认号:是期待收到对方的下一个报文段的数据的第一个字节的序号
数据偏移:它之处TCP报文段的数据起始处离TCP报文段的起始处有多远
保留字段:保留为今后使用,但目前没用过
紧急URG:当URG=1时,标明紧急指针字段有效。它告诉系统此报文端中有紧急数据,应尽快传送(相当于高优先级的数据)
确认ACK:当ACK=1时,确认号字段才有效,当ACK=0时,确认号无效
推送PSH(PuSH):接收TCP收到PSH=1的报文段,就尽快地交付接收应用京城,而不再等到整个缓存都填满了后再向上交付
复位RST(ReSeT):当RST=1时,标明TCP连接中出现严重差错(如主机崩溃或其他原因),必须释放链接,然后再重新建立运输连接
同步SYN:同步SYN=1表示这是一个连接请求或连接接收报文
终止FIN(FINis):用来释放一个连接。FIN=1标明此报文的发送端的数据已经发送完毕,并要求释放运输连接
窗口字段:指发送本报文段以防的接收窗口,用来让对方设置发送窗口的依据
校验和:检验和字段检验的范围包括首部和数据这两部分。在计算检验和时,要在TCP报文段的前面加上12字节的伪首部
紧急指针字段:之处在本报文段中紧急数据共多少个字节(紧急数据放在本报文段数据的最前面)
选项字段:长度可变。
3.三次握手图解:
第一次握手
第二次握手
第三次握手
二、应用层协议
1.域名系统DNS
域名系统DNS
功能:将域名转换成IP地址
域名服务器图解:
根域名服务器:
在使用迭代查询时,根域名服务器把下一步应该找的顶级域名服务器的IP地址告诉本地域名服务器
顶级域名服务器:
负责管理在该顶级域名服务器注册的所有二级域名。收到DNS查询请求时,就给出相应的回答
权限域名服务器:
负责一个区域的域名服务器,当一个权限域名服务器还不能给出最后的查询回答时,就会告诉发出查询请求的DNS客户,下一步应该查找哪一个权限域名服务器
域名处理过程:(迭代查询)
HOST文件:
host文件是windows系统中一个负责IP地址与域名快递速析的文件,以ASCLL格式报错。键入域名的时候,首先会去看看hosts文件中有没有关于此域名的IP地址的记录。如果有,就直接登录该网站,没有再查询DNS服务器。
2.HTTP超文本传输协议
URL:统一资源定位符
图解:
用户点击事件:
①浏览器分析URL
②浏览器向DNS请求解析相关域名IP
③域名系统解析出相关域名IP
④浏览器与服务器建立TCP连接
⑤浏览器发出取文件指令 GET /**/index.html
⑥服务器做出响应,把文件index.html发给浏览器
⑦TCP连接释放
⑧浏览器显示index.html相关文本
底层:
HTTP协议首先和服务器简历TCP连接,需要三次握手,当三次握手的前两部分完成后,浏览器把HTTP请求报文作为三次握手的第三个报文数据发送给万维网服务器,服务器收到后,就把请求的文档返回给客户
所需时间:
RTT:往返时间。表示从发送端发送数据开始,到发送端收到来自接收端的确认
HTTP1.0:
采用下图方式连接。其主要缺点为没请求一个文档就要有2RTT的开销。另外每一次新建立TCP连接都要分配缓存和变量,因服务器同时要服务于大量客户请求,使服务器负担很重
.
HTTP1.1:
使用持续连接。万维网服务器在发送响应后仍然在一段时间内保持这条连接,使同一个客户(浏览器)和该服务器可以继续在这条连接上传后续的HTTP请求报文和响应报文。这并不局限与传送同一个页面上链接的文档,而是只要这些文档都在同一个服务器上就行
Http的特点:
①HTTP使用面向连接的运输层TCP协议,保证数据的可靠传输
②HTTP协议本身是无连接的,通信双方在交换HTTP报文之前不需要先建立HTTP连接,
③HTTP协议是无状态的,即同一个客户第二次访问同一个服务器上的页面时,服务器的响应和第一次相同
3.HTTPS
概念:
①是HTTP的安全版,使用SSL
②默认使用TCP端口443
③S实际是SSL协议。SSL是Netscape公司发明的一种用于WEB的安全传输协议。能够加密数据防止数据中途被窃取;能够维护数据的完整性,确保数据在传输过程中不被改变
④HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全
4.WebSocket
概念:
WebSocket协议是基于TCP的一种新的网络协议,是Html5提出的一个协议已规范,它实现了浏览器与服务器全双工通信、允许服务器主动发送信息给客户端
优点:
①互相沟通的Header是很小的,大概只有2Bytes
②服务器的推送买服务器不再被动的接收到浏览器的请求之后才返回数据,而是在有新数据时主动就推送给浏览器
明天计划的事情:
看老大的敏捷开发流程,还有刷下小课堂
遇到的问题:
无
收获:
对计算机网络有了一定的了解
评论