OSI网络七层协议
传输层控制协议TCP
传输控制协议(TCP)是Internet一个重要的传输层协议。TCP提供面向连接、可靠、有序、字节流传输服务。应用程序在使用TCP之前,必须先建立TCP连接。
TCP握手机制
三次握手
目的:检测网络连接是否通畅。
四次挥手
目的:断开连接,保证数据传输完毕。
用户数据报协议UDP
用户数据报协议UDP是Internet传输层协议。提供无连接、不可靠、数据报尽力传输服务。
开发应用人员在UDP上构建应用,关注以下几点:
1、应用进程更容易控制发送什么数据以及发送时间
2、无需建立连接
3、无连接状态
4、首部开销小
UDP和TCP比较
UDP使用场景
速度快,资源占用少
1、音视频
2、物联网,设备上报(摩拜、ofo定位)
Socket编程
Internet中应用最广泛的网络应用编程接口,实现3种底层协议接口:
- 数据报类型套接字SOCK_DGRAM(面向UDP接口)
- 流式套接字SOCK_STREAM(面向TCP接口)
- 原始套接字SOCK_RAW(面向网络层协议接口IP、ICMP等)