网络编程
- 应用层
- http 协议
- 在浏览器输入一个地址,浏览器按照 http 协议将输入的地址包装成 http 报文
- 和数据传输没有任何关系
- 只负责数据包装
- 包装目的就是为了区分不同的行为
- 传输层
- 将应用层包装好的数据,通过传输层进行传输
- TCP: 电话机
- 端到端通信协议,必须知道对方的 ip 地址和端口号
- TCP/IP 对数据传输有一定的完整性的保障
- 一旦传输过程发生数据的完整性丢失,则全部丢掉重传
- 三次握手连接
- 双方通信必须先建立连接
- 确保双方都能收到对方的消息
- 首先呢,有两个概念
- 客户端 发送一个请求 –> 再回一个 这就是三次握手连接
- 服务器 回送一个消息
- 建立三次握手连接之后双方就可以进行有保证的数据通信了
- 用于 web 服务器 和 客户端浏览器 传输数据
- 数据安全性,对数据完整性有要求的使用 TCP/IP 协议
- UDP: 收音机 广播
- 发送一条数据,谁收到我不关心
- 例如游戏、在线听歌、看电影 都是使用 UDP 协议
- 对于数据的完整性没有保证
- 网络层
- 路由定位
- IP 寻址 和 路由定位
- 链路层
- “链接层”的功能,它在 “实体层” 的上方,确定了 0 和 1 的分组方式
- 对要传输的数据,把 0 和 1 进行分组,分成多个数据块进行传输
- 实体层
- 光缆、电缆、双绞线、无线电液
- 高电频、低电频
在终端模拟聊天室
服务端模拟
|
|
客户端模拟
|
|