网络层
建议阅读时长:7min
目录
- 概念
- 网络应用体系结构
- 网络应用进程通信
- 同一主机运行进程之间的通信
- 不同主机运行进程之间的通信
- 网络应用的服务需求
- Internet 传输层服务模型
- 特定网络应用及协议
- HTTP网络协议
- SMTP、POP、IMAP
- DNS
- P2P应用
- web缓存/代理服务器技术
- 功能
- 缓存既充当客户端,也充当服务端
- socket 编程
- TCP客户端软件流程
- UDP客户端软件流程
概念
- 进程 主机上运行的程序
- 进程的标识符 IP地址 + 端口号
- RRT 从客户端发送一个很小的数据包到服务器并返回所经历的时间
- cookie 某些网站为了辨别用户身份, 进行session跟踪而储存在用户本地终端的数据
- TLD 顶级域名服务器
网络应用体系结构
客户机/服务器、P2P、混合结构
网络应用进程通信
同一主机运行进程之间的通信
- 进程间通信机制 利用socket发送/接收消息实现
- 操作系统提供
不同主机运行进程之间的通信
- 消息交换
网络应用的服务需求
可靠性、带宽、时延
Internet 传输层服务模型
- TCP 面向连接、可靠传输、流量控制、拥塞控制、字节流传输
- UDP 无连接、不可靠的数据传输、无流量控制、无拥塞控制、数据报传输
特定网络应用及协议
HTTP网络协议
- 两类消息 请求消息、响应消息
- C/S结构 客户:请求、接受、展示web对象 服务器:响应客户的请求,发送对象
- 使用TCP传输服务
- 服务器在80端口等待客户的请求
- 浏览器发起到服务器的TCP连接
- 服务器接受来自浏览器的TCP连接
- 浏览器与web服务器交换HTTP消息
- 关闭TCP连接
- 上传输入的两种方式 POST方法:在请求消息的消息体中上传客户端的输入,适用于填写表格 GET方法:输入信息通过URL字段上传
- 两种类型 非持久性连接,适用于HTTP1.0,每个TCP连接最多允许传输一个对象 持久性连接,适用于HTTP1.1,每个TCP连接允许传输多个对象
- 无状态 服务器不维护任何有关客户端过去所发送消息的信息 需要cookie储存在本地方便快捷使用
SMTP、POP、IMAP
用于邮件发送的协议
DNS
域名解析系统
- DNS服务 域名向IP地址的翻译、主机别名、负载均衡
- 层级访问 本地域名解析服务器无法解析域名时,访问根域名服务器
P2P应用
web缓存/代理服务器技术
功能
在不访问服务器的前提下满足客户端的HTTP请求
缓存既充当客户端,也充当服务端
如果所请求对象在缓存中,缓存返回对象 如果不在缓存中,缓存服务器向原始服务器发送HTTP请求,获取对象,然后返回给客户端并保存
socket 编程
TCP客户端软件流程
- 确定服务器IP地址与端口号
- 创建套接字
- 分配本地端点地址
- 连接服务器
- 遵循应用层协议进行通信
- 关闭/释放连接
UDP客户端软件流程
- 确定服务器IP地址与端口号
- 创建套接字
- 分配本地端点地址
- 指定服务器端点地址,构造UDP数据报
- 遵循应用层协议进行通信
- 关闭/释放套接字