11 网络编程TCP协议、UDP协议、ip地址、端口号、内网、外网

一、网络通信协议

1.TCP协议

传输控制协议 (Transmission Control Protocol)。TCP协议是面向连接的通信协议,即传输数据之前,在发送端和接收端建立逻辑连接,然后再传输数据。

TCP协议中,在发送数据的准备阶段,客户端与服务器之间的三次交互,以保证连接的可靠。常用于,下载文件、浏览网页等。

11 网络编程TCP协议、UDP协议、ip地址、端口号、内网、外网

 

 

2.UDP协议

用户数据报协议(User Datagram Protocol)。UDP协议是一个面向无连接的协议。传输数据时,不需

要建立连接,不管对方端服务是否启动,直接将数据、数据源和目的地都封装在数据包中,直接发送。每个

数据包的大小限制在64k以内。它是不可靠协议,因为无连接,所以传输速度快,但是容易丢失数据。日常应

用中,例如视频会议、QQ聊天等。

 

二、ip地址

IPv4:是一个32位的二进制数,通常被分为4个字节,表示成 a.b.c.d 的形式,例如 192.168.65.100

 

IPv6:由于互联网的蓬勃发展,IP地址的需求量愈来愈大,但是网络地址资源有限,使得IP的分配越发紧张。

 

检查网络是否连通,在控制台输入

ping 空格 IP地址

ping 220.181.57.216

 

三、端口号

如果说IP地址可以唯一标识网络中的设备,那么端口号就可以唯一标识设备中的进程(应用程序)了。

 

端口号:用两个字节表示的整数,它的取值范围是0~65535。其中,0~1023之间的端口号用于一些知名的网

络服务和应用,普通的应用程序需要使用1024以上的端口号。如果端口号被另外一个服务或应用所占用,会

导致当前程序启动失败。

 

利用 协议 + IP地址 + 端口号 三元组合,就可以标识网络中的进程了,那么进程间的通信就可以利用这个标识与其

它进程进行交互

11 网络编程TCP协议、UDP协议、ip地址、端口号、内网、外网

 

 

四、TCP通信程序

TCP通信能实现两台计算机之间的数据交互,通信的两端,要严格区分为客户端(Client)与服务端(Server)

1. 客户端: java.net.Socket 类表示。创建 Socket 对象,向服务端发出连接请求,服务端响应请求,两者建立连接开始通信。

2. 服务端: java.net.ServerSocket 类表示。创建 ServerSocket 对象,相当于开启一个服务,并等待客户端的连接。

 

五、内网外网

11 网络编程TCP协议、UDP协议、ip地址、端口号、内网、外网