Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说Java TCP/IP Socket编程「终于解决」,希望能够帮助你!!!。
Hello,朋友们,你们的小果又来啦!本文主要介绍下支持TCP/IP协议的Socket编程。
Socket(套接字)是通信的基石,是支持TCP/IP协议的路通信的基本操作单元。可以将套接字看作不同主机间的进程进行双间通信的端点,它构成了单个主机内及整个网络间的编程界面。套接字存在于通信域中,通信域是为了处理一般的线程通过套接字通信而引进的一种抽象概念。套接字通常和同一个域中的套接字交换数据(数据交换也可能穿越域的界限,但这时一定要执行某种解释程序),各种进程使用这个相同的域互相之间用Internet协议簇来进行通信。
Socket可以看成是两个网络应用程序进行通信时,各自通信连接中的端点,这是一个逻辑上的概念。它是网络环境中进程间通信的API(应用程序编程接口),也是可以被命名和寻址的通信端点,使用中的每一个套接字都有其类型和一个与之相连进程。通信时其中一个网络应用程序将要传输的一段信息写入它所在主机的 Socket中,该 Socket通过与网络接口卡(NIC)相连的传输介质将这段信息送到另外一台主机的 Socket中,使对方能够接收到这段信息。
Socket是由IP地址和端口结合的,提供向应用层进程传送数据包的机制,主要有3种类型:流套接字(SOCK_STREAM)、数据报套接字(SOCK_DGRAM)、原始套接字(SOCK_RAW)。根据连接启动的方式以及本地套接字要连接的目标,套接字之间的连接过程可以分为三个步骤:服务器监听、客户端请求、连接确认。
受文章篇幅限制,小编不能把相关的知识都详尽铺陈于纸上,因此给大家推荐了一本书——《Java TCP/IP Socket编程 》。
本书主要通过简单的程序实例来介绍一些编程概念,每一个实例后都附有对每行代码的注解,用以说明程序各部分的功能。这样使读者能够结合程序的上下文来理解重要的对象和方法。当你阅读代码时,就能理解每行代码的作用。
我们的例子并没有涵盖Java中所有库的应用。有些功能,特别是序列化技术,要求相互通信的所有节点都是由Java实现的。同时,为了尽快地介绍实例,我们刻意避免介绍引入之后将被清除的类和方法。我们尽量保持了内容的简洁,尤其是前面几个章节。
第1章对计算机网络的概念进行了总体概述。从各方面看,这一介绍并不全面,但能够使读者与贯穿全书的概念和术语相同步。
第2章介绍了简单的客户端和服务器的结构,这章中的代码能作为进行各种练习的起点。
第3章涵盖了有关消息的创建和解析的基础内容。读者若能理解并消化前3章的内容,将能够为简单应用协议实现一个客户端和服务器。
第4章和第5章介绍了建立具有扩展性和健壮性的客户端与服务器端的高级技术,其中,第5章专注于工具的应用,并对
"New I/O"包进行了讲解。最后,为了与"通过程序来阐明原理"的目的相一致;
第6章从细节上讨论了程序的构造和底层协议的实现之间的关系。
有感兴趣的小伙伴可以点击下方链接获取《Java TCP/IP Socket编程 原书第2版》哦!限时免费哦!!!
网址:http://www.openketang.com/detail?id=80
还有更多海量资源可以登录Java资源库官网获取哦!