网络通信编程(UDP和TCP协议的实现)

本文详细介绍了网络编程的基础,包括网络编程三要素:IP地址、端口和协议,重点讲解了UDP和TCP协议。对于UDP,阐述了其无连接通信的特点和通信步骤;而对于TCP,介绍了其面向连接的特性以及三次握手过程。此外,还提供了UDP和TCP通信程序的实现步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.网络编程入门

1.1网络编程概述

网络编程:在网络通信协议下,实现网络互连的不同计算机上运行的程序间可以进行数据交换。(可以通过访问他人计算机上的内容进行资源共享和信息传递)

1.2网络编程三要素

第一要素

IP地址(设备的标识)

第二要素

端口(应用程序的标识)

第三要素

协议(连接和通信的规则被称为网络通信协议,常见的协议有UDP协议和TCP协议)

1.3IP地址(网络中设备的唯一标识)

IPv4:四个字节
IPv6:十六个字节

常用命令

      ipconfig(查看本机IP地址)
      ping  IP地址(检查网络是否连通)

特殊IP地址

127.0.0.1(回送地址,可以代表本机地址,一般用来测试使用)

1.4InetAddress类的使用(为了方便对IP地址的获取和操作)

此类表示Internet协议IP地址

方法一

static InetAddress getByName(String host)
确定主机名称的IP地址。主机名称可以是机器名称,也可以是IP地址。

方法二

String getHostName()
获取此IP地址的主机名。

方法三

String getHostAddress()
返回文本显示中的IP地址字符串。

public class InetAddressDemo{
       public static void main(String[] args) throws UnknownHostException{
       InetAddress address=InetAddress.getByName("DESKTOP-68NADAV");
       String name=address.getHostName();
       String ip=address.getHostAddress();
       System.out.println("主机名:"+name);
        System.out.println("IP地址:"+ip);
       }
}

可获得主机名和IP地址

1.5端口(设备上应用程序的唯一标识)

端口号:取值范围0~65535,需选择合适的端口号(1024以上)

1.6协议(连接和通信的规则被称为网络通信协议)

UDP协议(用户数据报协议)

无连接通信协议,即在数据传输时,数据的发送端和接收端不建立逻辑连接。消耗资源小,通信效率高,通常用于音频、视频和普通数据的传输,因为不能保证数据的完整性,因此在传输重要数据时不使用UDP协议。

TCP协议(传输控制协议)

面向连接的通信协议,即传输数据之前,在发送端和接收端建立逻辑连接,然后再传输数据,提供了两台计算机之间可靠无差错的数据传输。必须明确客户端和服务器端,由客户端向服务端发出连接请求,每次连接的创建都需要经过“三次握手”

第一次握手

客户端向服务器端发出连接请求,等待服务器确认。

第二次握手

服务器端向客户端回送一个响应,通知客户端收到了连接请求。

第三次握手
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值