2020-07-09网络编程
2020-07-11 本文已影响0人
智障猿
网络编程概述
- 计算机网络
是指将地理位置不同的和具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。 - 网络编程
在网络通信协议下,实现网络互联的不同计算机上运行的程序间可以进行数据交换。 - 网络编程三要素
①IP——要想让网络中的计算机能够互相通信,必须为每台计算机指定一个标识号,通过这个标识号来指定要接收数据的计算机和识别发送的计算机,而IP地址就是这个标识号,也就是设备的标识。
②端口——网络通信,本质上是两个应用程序的通信,每台计算机都有很多应用程序,那么在网络通信中,如何区分这些应用程序呢?如果说IP地址可以唯一标识网络中的设备,那么端口就可以唯一标识设备中的应用程序了,也就是应用程序的标识
③协议——他对数据的传输格式、传输速率、传输步骤做了统一规定,通信双方必须同时遵守才能完成数据交换,常见的协议有UDP和TCP协议
IP地址
- 常用命令
ipconfig: 查看本机IP地址
ping IP地址:检测网络是否连通 - 特殊IP地址
127.0.0.1:是回送地址,可以代表本机地址,一般用来测试使用 -
InetAddress的使用
此类表示Internet(IP)地址
方法名 | 说明 |
---|---|
static InetAddress getByName(String host) | 确定主机名称的IP地址,主机名称可以是机器名称,也可以是IP地址 |
String getHostName() | 获取此IP地址的主机名 |
String getHostAddress() | 返回文本显示中的IP地址字符串 |
端口
端口号:用两个字节表示的整数,它的取值范围是065535.其中01024之间的端口号用于一些知名的网络服务和应用。普通的应用程序需要使用1024以上的端口号。如果端口号被另外的服务和应用所占用,会导致当前程序启动失败。
协议
- UDP协议:无连接通信协议,即在数据传输时,数据的发送端和接收端不建立逻辑连接,简单来说,当一台计算机向另一台计算机发送数据时,发送端不会确认接收端是否存在,就会发出数据。同样接收端在收到数据时,也不会向发送端反馈是否收到数据。
- TCP协议:面向连接的通信协议,即在传输数据之前,在发送端和接收端建立逻辑连接,然后再传输数据,它提供了两台计算机之间可靠无差错的数据传输。在TCP连接中必须明确客户端和服务器端,由客户端向服务器端发出连接请求,每次连接都需要经过三次握手
①第一次握手:客户端向服务器发出连接请求,等待服务器确认。
②第二次握手:服务器向客户端回送一个响应,通知客户端收到连接请求。
③第三次握手:客户端再次向服务器发送确认信息,确认连接