网络编程概念。一个UDP构造的聊天室

这篇博客探讨了网络编程的基础,特别是IP地址和端口组成的Socket以及UDP和TCP协议的区别。UDP作为无连接、不可靠但快速的协议,适合用于简单的数据交换。文章通过实例介绍了如何使用Java实现一个UDP聊天室,包括服务器端和客户端的编写,并提到了多线程处理及异常处理策略。
摘要由CSDN通过智能技术生成

网络编程:利用网络将不同计算机数据进行交换

网络三要素:

IP地址   +   端口 =Socket

协议 :UDP,TCP     

inetAddress类的使用

public class InetAddressDemo {

	public static void main(String[] args) throws Exception {
		// TODO Auto-generated method stub
		InetAddress address = InetAddress.getByName("");
		System.out.println(address.getHostAddress());
		System.out.println(address.getHostName());
		InetAddress localHost = InetAddress.getLocalHost();
		System.out.println(localHost);
	}

}
用本机名和本机地址


UDP和TCP协议

UDP:将数据源和目的封装在数据包中,不需要建立连接,每个数据包大小在64K内,无连接,是不可靠协议,但是速度很快。

TCP:建立连接,形成传输数据的通道,在连接中进行大数据量的传输;通过三次握手完成连接,是可靠协议,但是效率会稍低。



Socket:应用层和传输层之间的桥梁。下面的底层已经封装好了,我们只需要用Socket进行操作就行了。

Socket原理机制:

通信的两端都有Socket

网络通信其实就是Socket间的通信

数据在两个Socket之间通过IO传输

UDP传输服务器端编写

public class Server {

	public static void main(String[] args) throws Exception {
//		创建一个服务端Socket并监听指定端口
		DatagramSocket ds = new DatagramSocket(8888);
//		接收数据,并将数据放在数据包中
		byte[]
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值