第一篇文章,我先介绍以及记录一下我所学的知识点。(总结了一下视频老师讲的东西)
一,HTTP与Socket
1.HTTP:超文本传输协议
特点:客户端发送的请求需要服务器端每次来响应,在请求结束之后主动释放连接,从建立连接到关闭连接称为“一次连接”,所以HTTP是“短连接”。
2.Socket(IP+PORT):是TCP/IP的封装与应用,它不是协议,而是API
特点:客户端与服务器之间一旦建立连接,就可以互相范松消息,也叫对话,但在实际应用中,通信双方经过许多的中间节点,比如,路由器,网关,防火墙,大部分防火墙会默认关闭长时间处于不活跃的状态连接,而是Socket断开。
选择:当服务器主要想客户端推送消息,为了保持客户端与服务器数据的实时与同步,通常会从采用HTTP协议,只要客户端定时向服务器端发送请求,同时也是在询问是否有新的数据,如果有那就传入客户端。
二,TCP/IP模型
1.通信原理图
2.模型图
三,基于TCP的网络编程
1.Socket: IP地址+端口号组成了Socket,Socket是网络上运行程序之间双向通信的终结点,是TCP和UDP的基础。
2.JAVA提供的网络功能(可以查看API)
InetAddress:标识IP地址
URL:统一资源定位,通过URL可以直接读取或写入网络上的数据
Sockets:使用TCP协议实现Socket相关的类
Datagram:使用UDP协议。将数据保存在数据包中,通过网络通信。
3.Socket通信模型
<