目录
网络领域的知识
- 协议:tcp、udp、multicast
- IO(BIO、NIO、AIO)
- Socket
- NIO(Netty/Mina)
- 序列化和反序列化
TCP传输过程
http请求:
一个 http 请求,在整个网络中的请求过程当应用程序用TCP 传送数据时,数据被送入协议栈中, 然后逐个通过每一层直到被当作一串比特流送入网络。其中每一层对收到的数据都要增加一些首部信息
http响应:
当目的主机收到一个以太网数据帧时,数据就开始从协议栈中由底向上升,同时去掉各层协议加上的报文首部。每层协议盒都要去检查报文首部中的协议标识,以确定接收数据的上层协议。这个过程称作分用
IP 协议和 TCP/UDP 协议
什么是协议
协议相当于两个需要通过网络通信的程序达成的一种约定, 它规定了报文的交换方式和包含的意义。比如(HTTP)为 了解决在服务器之间传递超文本对象的问题,这些超文本 对象在服务器中创建和存储,并由 Web 浏览器进行可视化,完成用户对远程内容的感知和体验
什么是IP 协议
TCP 和UDP 是两种最为著名的传输层协议,他们都是使用IP 作为网络层协议。IP 协议提供了一组数据报文服务,每组分组报文都是由网络独立处理和分发,就像寄送快递包裹一样,为了实现这个功能,每个IP 报文必须包含一个目的地址的字段;就像我们寄送快递都需要写明收件人信息,但是和我们寄送快递一样,也可能会出现包裹丢失问题,所以IP 协议只是一个“尽力而为”的协议,在网络传输过程中,可能会发生报文丢失、报文顺序打乱,重复发送的情况。IP 协议层之上的传输层,提供了两种可以选择的协议,TCP、UPD。<