首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用Java实现TCP三次握手

用Java实现TCP三次握手
EN

Stack Overflow用户
提问于 2010-10-29 00:06:56
回答 5查看 5.7K关注 0票数 1

我想用Java实现TCP协议。我读过Sun文档和示例,但它们都只是简单地打开一个套接字,客户端等待服务器接受连接,然后发送数据。

我想知道如何使用Java实现三次握手和数据验证?服务器和客户端如何交换序列号?Java是否提供任何类/方法(或至少接口)来实现三次握手?

有人可以给我一些想法,或链接到一些例子?

提前谢谢你,

EN

回答 5

Stack Overflow用户

发布于 2010-10-29 00:14:37

您不能在Java中实现TCP,因为您不能直接访问IP层。Java允许您在传输层(TCP、UDP)工作,但不能在网络层(IP)工作。

注意,我指的是带有标准Java运行时库的“标准”Java。有一些系统(通常是嵌入式系统)在设备驱动程序级别都使用Java。我猜这不是您想要的,但为了以防万一,这里有一个用Java为嵌入式系统编写的完整TCP/IP堆栈的链接:

http://www.jopdesign.com/ejip/index.jsp

票数 1
EN

Stack Overflow用户

发布于 2010-10-29 08:29:59

TCP已经为您完成了所有握手和序列号的工作。您所要做的就是在客户端创建一个套接字,在服务器端创建一个ServerSocket,并接受来自ServerSocket的连接。您不必实现TCP。就这样办。一段时间前;-)

票数 1
EN

Stack Overflow用户

发布于 2011-04-13 00:41:38

是的,这是可能的。您可以使用JPCap这样的库访问Java语言中的IP层。TCP实现的其余部分可以由您构建。当然,这不是一项微不足道的任务。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4044805

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档