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