网络通信 笔记

189 阅读2分钟

TCP/IP 通信传输流

应用层(http) ---> 传输层(tcp)---> 网络层(ip) ---> 链路层 (网络)

在传输层中为了准确的将数据送到目标处,TCP协议采用了三次握手的方式

TCP协议把数据包送出去之后,会去确认对方是否接收成功。判断方式以标注标志的形式,用TCP( flag )---SYN(synchronize) 和 ACK(acknowledgement)

第一次.发送端会传输一个带有SYN标志的数据包给接收端

第二次.接收成功回传一个带有SYN和ACK标志的数据包表示传输成功

第三次.发送端会回传一个带有ACK标志的数据包,代表“握手”结束

DNS域名解析

用户使用主机名和域名来访问另一台计算机,而不是直接通过IP地址来访问的

让计算机去理解可能不是由纯数字组成的地址会变得困难。为了解决这个问题,DNS协议提供通过域名查找到IP地址

URL和URI

URI的格式 http:// user:pass@www.example.jp:80/dir/index.htm?uid=1#ch1

( http:// ) :协议方案名

( user:pass ) : 登录信息(认证)---- 可选项

( www.example.jp ) : 服务器地址

( 80 ) : 服务器端口号

( /dir/index.htm ) : 文件路径

( uid=1 ) : 查询字符串 ---- 传递的参数

( ch1 ) : 片段标识符

HTTP协议

HTTP协议用于客户端与服务端之间的通信,通过请求和响应的交换达成的通信

持久连接节省通信量 HTTP协议的初始版本中,每进行一次HTTP通信就要断开一次TCP连接,这些年随着HTTP的普及,文档中包含大量图片的情况变得多了起来,因此每次的请求都会造成无谓的TCP连接建立和断开,增加了通信量的开销。 在HTTP/1.0中并未将所有连接默认都是持久连接,到HTTP/1.1内这项规则标准化。进而产生了管线化的请求方式,这样子就能同时发起多个请求,不需要一个一个地等待响应了

HTTP状态码

状态码类别原因短语
1xxInformational(信息性状态码)接收到的请求正在处理
2xxSuccess(成功状态码)请求正常处理完毕
3xxRedirection(重定向状态码)需要进行附加操作以完成请求
4xxClient Error(客户端错误状态码)服务器无法处理请求
5xxServer Error(服务器错误状态码)服务器处理请求出错