1, 网络通讯的协议是开发网络程序的基础。目前最常用的协议是TCP/IP 协议和UDP 协议。而其他的如RMI,SOAP,FTP ,等协议都可以说是构建在这两者之上的。
2, 在网络协议的7层模型里,java主要关注的是在传输层 的应用,而对于底层的传输,可以不必关心它。而在传输层,TCP,UDP是两种传输数据流的方式。
3, TCP(Tranfer Control Protocol)的缩写,是一种面向连接的保证传输的协议,在传输数据流前,双方会先建立一条虚拟的通信道。可以很少差错传输数据。
UDP(User DataGram Protocol)的缩写,是一种无连接的协议,使用UDP传输数据时,每个数据段都是一个独立的信息,包括完整的源地址和目的地,在网络上以任何可能的路径传到目的地,因此,能否到达目的地,以及到达目的地的时间和内容的完整性都不能保证。
所以TCP必UDP多了建立连接的时间。相对UDP而言,TCP具有更高的安全性和可靠性。
4, TCP协议传输的大小不限制,一旦连接被建立,双方可以按照一定的格式传输大量的数据,而UDP是一个不可靠的协议,大小有限制,每次不能超过64K。
5, java的Socket对TCP,UDP都提供了支持。
补充:一个TCP连接必须要经过三次“对话”才能建立起来,其中的过程非常复杂,我们这里只做简单、形象的介绍,你只要做到能够理解这个过程即可。我们来看看这三次对话的简单过程:主机A向主机B发出连接请求数据包:“我想给你发数据,可以吗?”,这是第一次对话;主机B向主机A发送同意连接和要求同步(同步就是两台主机一个在发送,一个在接收,协调工作)的数据包:“可以,你什么时候发?”,这是第二次对话;主机A再发出一个数据包确认主机B的要求同步:“我现在就发,你接着吧!”,这是第三次对话。三次“对话”的目的是使数据包的发送和接收同步,经过三次“对话”之后,主机A才向主机B正式发送数据
A从一个电脑上拷贝资料到另一个电脑上就是使用的TCP协议。
B面向非连接”就是在正式通信前不必与对方先建立连接,不管对方状态就直接发送。现在的手机短信非常相似:你在发短信的时候,只需要输入对方手机号就OK了。UDP适用于一次只传送少量数据、对可靠性要求不高的应用环境。
我们经常使用“ping”命令来测试两台主机之间TCP/IP通信是否正常,其实“ping”命令的原理就是向对方主机发送UDP数据包,然后对方主机确认收到数据包,如果数据包是否到达的消息及时反馈回来,那么网络就是通的
----转载http://chenhua-1984.iteye.com/blog/363721
分享到:
相关推荐
本资源是使用 java,分别用 TCP 和 UDP 传输文件的源代码。读者朋友可以下载下来,参考着满足自己的需求。 另有博客《Java 使用 TCP 和 UDP 传输文件》可以参考,地址是:...
通过学习和实践这些TCP和UDP的Java测试代码,开发者可以更好地理解这两种协议的工作原理,为开发高效稳定的网络应用程序打下坚实的基础。同时,对于网络编程中的异常处理、多线程等知识也需深入理解,以便在实际项目...
java读写Modbus TCP UDP数据,java与modbus通信,Modbus TCP UDP与java通信 全开源 这是一个能正常通过Modbus TCP UDP协议读写项目 请放心下载,完全开源,在多个项目中已经使用
Java中的TCP和UDP Socket通信是网络编程的基础,用于在不同设备之间建立可靠的数据传输通道。TCP(Transmission Control Protocol)提供的是面向连接、有序且无损的服务,而UDP(User Datagram Protocol)则是无连接...
在标题“Socket之tcp和udp”中,涉及的核心知识点是TCP(传输控制协议)和UDP(用户数据报协议),这两种协议是网络通信中常见的传输层协议。 TCP(传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层...
本资源提供的是基于Java实现的TCP和UDP协议的源代码,可以直接运行并验证其正确性。 TCP是一种面向连接的、可靠的协议,它确保了数据包的顺序传递和错误检测。在Java中,我们可以使用`java.net.Socket`类和`java...
java多线程实现TCP连接UDP聊天的聊天程序
本次实验旨在通过实践操作,帮助学生深入理解 TCP 和 UDP 的工作原理,并掌握使用 Java 进行网络编程的方法。 #### 实验目的 1. **熟悉 Java 开发环境**:学习如何使用 Java 实现 TCP 流通信和 UDP 数据报通信。 2...
在IT行业中,网络编程是不可或缺的一部分,特别是在Java开发中,TCP和UDP协议是网络通信的基础。本实验项目“tcp_udp_socket.zip”旨在帮助开发者理解如何使用Java实现TCP和UDP的Socket通信。以下将详细讲解这两个...
在Java编程语言中,TCP(传输控制协议)和UDP(用户数据报协议)是两种主要的网络通信协议,用于在互联网上实现数据的可靠传输。本文将深入探讨这两种协议的基本概念,以及如何使用纯Java来实现TCP和UDP的示例代码。...
2) 基于Java Socket TCP和UDP实现一个简易的网络文件服务程序,包含服务器端FileServer和客户端FileClient; 3) 服务器端启动时需传递root目录参数,并校验该目录是否有效; 4) 服务器启动后,开启TCP:2021端口,...
总之,Java Socket编程是网络编程的基础,理解和掌握TCP和UDP协议的使用,能够帮助开发者构建高效、稳定的网络应用。无论你是开发文件传输服务、在线聊天应用,还是实时视频平台,Socket编程都会是你不可或缺的工具...
文件"运用JAVA的concurrent_ExecutorService线程池实现socket的TCP和UDP连接 - 空山不空 - 博客园.mht"揭示了一个高级话题:如何利用Java并发库中的`ExecutorService`来管理TCP和UDP的并发连接。`ExecutorService`是...
它简化了网络编程,特别是对于TCP和UDP协议的处理,使得开发者能够轻松地搭建面向物联网(IoT)设备的上行和下行通信服务。 在TCP(传输控制协议)方面,Netty提供了全面的API来创建服务器和客户端。TCP是一种面向...
总结,"java -> TCP/UDP 连接测试 SocketTest"项目为Java开发者提供了一个实践TCP和UDP通信的平台。通过学习和调试这个项目,不仅可以掌握网络编程的基本概念,还能深入理解TCP和UDP的特性及其在实际应用中的差异。...
在IT行业中,网络通信是至关重要的一个领域,Java作为一门广泛应用的编程语言,提供了丰富的API来支持TCP(传输控制协议)和UDP(用户数据报协议)这两种不同的网络通信方式。本篇文章将深入探讨如何使用Java实现TCP...
在计算机网络通信领域,TCP(Transmission Control Protocol)和UDP(User Datagram Protocol)是两种重要的传输层协议,它们分别在不同的场景下发挥着关键作用。本篇文章将深入探讨这两种协议,并基于VC++实现的仿...
在IT行业中,网络通信是至关重要的一个领域,而TCP(Transmission Control Protocol)和UDP(User Datagram Protocol)则是...无论是TCP还是UDP,理解其工作原理并熟练运用Java的Socket API是开发高效网络应用的基础。
在IT领域,网络通信是核心部分之一,而TCP(传输控制协议)和UDP(用户数据报协议)则是两种主要的传输层协议。本程序旨在帮助理解这两种协议的工作原理,并能够实际发送TCP和UDP数据包。下面我们将深入探讨TCP和UDP...
这个项目是一个基于Java编程语言实现的聊天程序,它涵盖了网络通信中的两种主要协议——用户数据报协议(UDP)和传输控制协议(TCP),同时利用了多线程技术来提高程序的并发处理能力。在Java中,网络通信主要依赖于...