基于TCP协议网络编程
Posted anpeiyong
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于TCP协议网络编程相关的知识,希望对你有一定的参考价值。
1、TCP/IP是一种可靠的网络协议,它在通信的两端各建立一个Socket,从而在通信的两端之间形成网络虚拟链路;
一旦建立了虚拟的网络链路,两端的程序就可以通过虚拟链路来进行通信;
2、Java对基于TCP协议的网络通信提供了良好的封装;
Java使用Socket对象来代表两端的通信端口;
并通过Socket产生的IO流来进行通信;
3、【IP协议】:
1.1 Internet上使用的很重要的一个协议,即Internet协议,简称IP协议;
1.2 通过使用IP协议,从而使Internet成为一个 允许连接不同计算机和不同操作系统 的网络;
1.3 要使两台计算机进行通信,必须使用同一种通信协议;
1.4 IP协议只保证计算机能够发送和接受分组数据;
1.5 IP协议负责 将消息从一个主机到另一个主机,发送过程中被分割成一个个的包;
1.6 尽管计算机安装了IP软件,保证了计算机之间可以正常发送和接受数据,但IP协议不能解决数据分组在传输过程中出现的问题;
1.7 若要解决数据分组在传输过程中的问题,还必须安装TCP协议来提供可靠并且无差错的通信服务;
4、【TCP协议】:
1.1 TCP协议又被称为端对端协议,为两台计算机之间的连接起到了重要的作用:当一台计算机与另一台计算机连接时,TCP协议
会让他们建立一个连接(用于发送和接受数据的虚拟链路);
1.2 TCP协议负责收集这些数据包,并将其按适当的顺序放好传送,在接收端接受后再将其正确的还原;
1.3 TCP协议保证了数据包在传输过程中准确无误;
1.4 TCP协议使用 重发机制:当一个通信实体发送消息给另一个通信实体后,需要收到另一个通信实体的确认信息,如果没有收到
另一个通信实体的确认信息,将会再次重发刚才的消息;
1.5 TCP协议的重发机制,使它能够适应各种变化,即使在Internet堵塞的情况下,也能保证通信的可靠;
5、【创建TCP服务端】
1.1 Java中能够接受其他通信实体连接请求的是ServerSocket类(用来监听来自客户端的Socket连接,如果没有连接,将一直等待);
构造器:
ServerSocket(int port); 用指定端口创建ServerSocket,端口范围:0~65535;
方法:
Socket accept(); 如果接受到一个客户端Socket的连接请求,将返回一个该客户端Socket对应的Socket;
1.2 建立连接后,返回客户端Socket对应的Socket;
方法:
InputStream getInputStream(); 通过该Socket产生的输入流来取出数据
OutputStream getOutputStream(); 通过该Socket产生的输出流向客户端写数据
以上是关于基于TCP协议网络编程的主要内容,如果未能解决你的问题,请参考以下文章