`
xiaomogui
  • 浏览: 244293 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

java基础之tcp和udp

阅读更多

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 传输文件的源代码。读者朋友可以下载下来,参考着满足自己的需求。 另有博客《Java 使用 TCP 和 UDP 传输文件》可以参考,地址是:...

    Java TCP和 UDP测试代码

    通过学习和实践这些TCP和UDP的Java测试代码,开发者可以更好地理解这两种协议的工作原理,为开发高效稳定的网络应用程序打下坚实的基础。同时,对于网络编程中的异常处理、多线程等知识也需深入理解,以便在实际项目...

    java读写Modbus TCP UDP数据,java与modbus通信,Modbus TCP UDP与java通信 全开源

    java读写Modbus TCP UDP数据,java与modbus通信,Modbus TCP UDP与java通信 全开源 这是一个能正常通过Modbus TCP UDP协议读写项目 请放心下载,完全开源,在多个项目中已经使用

    JAVA TCP和UDP Socket通信框架

    Java中的TCP和UDP Socket通信是网络编程的基础,用于在不同设备之间建立可靠的数据传输通道。TCP(Transmission Control Protocol)提供的是面向连接、有序且无损的服务,而UDP(User Datagram Protocol)则是无连接...

    Socket之tcp和udp

    在标题“Socket之tcp和udp”中,涉及的核心知识点是TCP(传输控制协议)和UDP(用户数据报协议),这两种协议是网络通信中常见的传输层协议。 TCP(传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层...

    基于java的TCP 和 UDP 协议源代码

    本资源提供的是基于Java实现的TCP和UDP协议的源代码,可以直接运行并验证其正确性。 TCP是一种面向连接的、可靠的协议,它确保了数据包的顺序传递和错误检测。在Java中,我们可以使用`java.net.Socket`类和`java...

    java多线程实现TCP连接UDP聊天的聊天程序

    java多线程实现TCP连接UDP聊天的聊天程序

    java实现的tcpudp通信

    本次实验旨在通过实践操作,帮助学生深入理解 TCP 和 UDP 的工作原理,并掌握使用 Java 进行网络编程的方法。 #### 实验目的 1. **熟悉 Java 开发环境**:学习如何使用 Java 实现 TCP 流通信和 UDP 数据报通信。 2...

    tcp_udp_socket.zip_Java TCP/UDP_java Tcp _java socket _java tcp

    在IT行业中,网络编程是不可或缺的一部分,特别是在Java开发中,TCP和UDP协议是网络通信的基础。本实验项目“tcp_udp_socket.zip”旨在帮助开发者理解如何使用Java实现TCP和UDP的Socket通信。以下将详细讲解这两个...

    JAVA 实现TCP和UDP的DEMO源码

    在Java编程语言中,TCP(传输控制协议)和UDP(用户数据报协议)是两种主要的网络通信协议,用于在互联网上实现数据的可靠传输。本文将深入探讨这两种协议的基本概念,以及如何使用纯Java来实现TCP和UDP的示例代码。...

    基于java socket使用tcp udp进行简易控制台命令与文件传输

    2) 基于Java Socket TCP和UDP实现一个简易的网络文件服务程序,包含服务器端FileServer和客户端FileClient; 3) 服务器端启动时需传递root目录参数,并校验该目录是否有效; 4) 服务器启动后,开启TCP:2021端口,...

    Socket_TCP_UDP.rar_java socket tcp udp_java socket 协议_java tcp u

    总之,Java Socket编程是网络编程的基础,理解和掌握TCP和UDP协议的使用,能够帮助开发者构建高效、稳定的网络应用。无论你是开发文件传输服务、在线聊天应用,还是实时视频平台,Socket编程都会是你不可或缺的工具...

    java-tcp-udp编程

    文件"运用JAVA的concurrent_ExecutorService线程池实现socket的TCP和UDP连接 - 空山不空 - 博客园.mht"揭示了一个高级话题:如何利用Java并发库中的`ExecutorService`来管理TCP和UDP的并发连接。`ExecutorService`是...

    netty搭建TCP、UDP服务

    它简化了网络编程,特别是对于TCP和UDP协议的处理,使得开发者能够轻松地搭建面向物联网(IoT)设备的上行和下行通信服务。 在TCP(传输控制协议)方面,Netty提供了全面的API来创建服务器和客户端。TCP是一种面向...

    java -> TCP/UDP 连接测试 SocketTest

    总结,"java -> TCP/UDP 连接测试 SocketTest"项目为Java开发者提供了一个实践TCP和UDP通信的平台。通过学习和调试这个项目,不仅可以掌握网络编程的基本概念,还能深入理解TCP和UDP的特性及其在实际应用中的差异。...

    java实现TCP+UDP通信

    在IT行业中,网络通信是至关重要的一个领域,Java作为一门广泛应用的编程语言,提供了丰富的API来支持TCP(传输控制协议)和UDP(用户数据报协议)这两种不同的网络通信方式。本篇文章将深入探讨如何使用Java实现TCP...

    TCP和UDP仿QQ聊天程序源码

    在计算机网络通信领域,TCP(Transmission Control Protocol)和UDP(User Datagram Protocol)是两种重要的传输层协议,它们分别在不同的场景下发挥着关键作用。本篇文章将深入探讨这两种协议,并基于VC++实现的仿...

    tcp-udp.zip_java socket udp_java tcp udp

    在IT行业中,网络通信是至关重要的一个领域,而TCP(Transmission Control Protocol)和UDP(User Datagram Protocol)则是...无论是TCP还是UDP,理解其工作原理并熟练运用Java的Socket API是开发高效网络应用的基础。

    TCP和UDP数据包发送程序

    在IT领域,网络通信是核心部分之一,而TCP(传输控制协议)和UDP(用户数据报协议)则是两种主要的传输层协议。本程序旨在帮助理解这两种协议的工作原理,并能够实际发送TCP和UDP数据包。下面我们将深入探讨TCP和UDP...

    Java版聊天程序(UDP TCP 多线程)

    这个项目是一个基于Java编程语言实现的聊天程序,它涵盖了网络通信中的两种主要协议——用户数据报协议(UDP)和传输控制协议(TCP),同时利用了多线程技术来提高程序的并发处理能力。在Java中,网络通信主要依赖于...

Global site tag (gtag.js) - Google Analytics