java网络编程中Socket什么意思?怎么工作的?

连接的机制(套接字)(Socket)
马克-to-win:同学,(视频下载) (全部书籍)请看看你自己的电视和什么连在一
起。是木桌子吗?还是窗帘?对,是接线板。网络的发明者们就是受到了我刚才提到的那个大家熟视无睹的现象的启发而采取了Socket(接线板)机制。但不
幸的是,
我们的最早的翻译家们不知什么原因,翻译成了套接字?谁能告诉我中文里套接字是什么意思?接线板(Socket)机制很形象。服务器和客户端都生成一个
Socket的类对象,俩对象就可以发送数据了。当然,机器之间的物理硬件以及电缆连接等细节都封装在类中了。我们就没必要关心了。下一步,从
Socket接线板中得到一个InputStream或OutputStream,这样,我们就可以将网络连接作为一对IO流对象来处理了。

详情黏贴以下网址在地址栏后请进:http://www.mark-to-win.com/index.html?content=JavaBeginner/javaUrl.html&chapter=JavaBeginner/JavaBeginner9_web.html#HowSocketWork

原文地址:https://www.cnblogs.com/mark-to-win/p/9701137.html

时间: 2024-10-11 11:47:55

java网络编程中Socket什么意思?怎么工作的?的相关文章

用java网络编程中的TCP方式上传文本文件及出现的小问题

自己今天刚学java网络编程中的TCP传输,要用TCP传输文件时,自己也是遇到了一些问题,抽空把它整理了一下,供自己以后参考使用. 首先在这个程序中,我用一个客户端,一个服务端,从客户端上传一个文本文件给服务端,服务端接收数据并显示“上传成功”给客户端. 客户端: 1 import java.io.BufferedReader; 2 import java.io.FileReader; 3 import java.io.IOException; 4 import java.io.InputStr

Java网络编程【Socket服务端和客户端】

Socket 编程大家都不陌生,Java 学习中必学的部分,也是 Java网络编程核心内容之一.Java 网络编程又包括 TCP.UDP,URL 等模块.TCP 对应 Socket模块,UDP 对应 DatagramPacket 模块.URL 对应 URL 模块.其中 TCP 和 UDP 是网络传输协议,TCP 是数据流传输协议,UDP 是数据包传输协议.两者之间的异同就不在这里说了,推荐一本入门书籍 <TCPIP入门经典>.我们开始 Socket 服务端和客户端编程吧. 一.Socket 服

浅谈TCP/IP网络编程中socket的行为

我认为,想要熟练掌握Linux下的TCP/IP网络编程,至少有三个层面的知识需要熟悉: . TCP/IP协议(如连接的建立和终止.重传和确认.滑动窗口和拥塞控制等等) . Socket I/O系统调用(重点如read/write),这是TCP/IP协议在应用层表现出来的行为. . 编写Performant, Scalable的服务器程序.包括多线程.IO Multiplexing.非阻塞.异步等各种技术. 关于TCP/IP协议,建议参考Richard Stevens的<TCP/IP Illust

java网络编程中拿到源后的写入动作

在网络编程中的TCP传输里,拿到Socket的源后,应该怎么进行读写操作呢,下面我列举了两种方法,希望大家帮忙补充···· 1.利用byte数组作为一个缓冲区进行读写 1 //获取socket流,将图片上传给服务端 2 FileInputStream fis=new FileInputStream("c:\\12.jpg"); 3 4 //获取了输出流 5 OutputStream out=s.getOutputStream(); 6 7 //用数组作为缓冲 8 byte[]buf=n

TCP/IP网络编程中socket的行为

一. read/write的语义:为什么会阻塞? 先从write说起: #include <unistd.h>ssize_t write(int fd, const void *buf, size_t count); 首先,write成功返回,只是buf中的数据被复制到了kernel中的TCP发送缓冲区.至于数据什么时候被发往网络,什么时候被对方主机接收,什么时候被对方进程读取,系统调用层面不会给予任何保证和通知. write在什么情况下会阻塞?当kernel的该socket的发送缓冲区已满时

java网络编程中的read阻塞问题

Socket的可写状态和可读状态.当输出缓冲区未满时,Socket是可写的(注意,不是对方启用接收操作后,本地才能可写,这是错误的理解),因此,当套接字被建立时,即处于可写的状态.对于可读,则是指缓冲区中有接收到的数据,并且这些数据未完成处理.在socket创建时,并不处于可读状态,仅当连接的另一方向本套接字的通道写入数据后,本套接字方能处于可读状态(注意,如果对方套接字已经关闭,那么本地套接字将处于可读状态,并且每次调用read后,返回的都是-1). 服务器 import java.net.*

Java基础篇Socket网络编程中的应用实例

说到java网络通讯章节的内容,刚入门的学员可能会感到比较头疼,应为Socket通信中一定会伴随有IO流的操作,当然对IO流比较熟练的哥们会觉得这是比较好玩的一章,因为一切都在他们的掌握之中,这样操作起来就显得非常得心应手,但是对于IO本来就不是多熟悉的哥们来说就有一定的困难了,在搞清楚IO流操作机制的同时还必须会应用到Socket通信中去,否则会对得到的结果感到非常郁闷和懊恼,下面就和大家一起分享一下自己遇到一点小麻烦后的感触以及给出的解决办法. 要求:客户端通过Socket通信技术上传本地一

java网络编程socket解析

转载:http://www.blogjava.net/landon/archive/2013/07/02/401137.html Java网络编程精解笔记2:Socket详解 Socket用法详解 在C/S通信模式中,client需要主动创建于server连接的Socket(套接字).服务器端收到了客户端的连接请求,也会创建与客户连接的Socket.Socket可看做是通信两端的收发器.server与client都通过Socket来收发数据. 1.构造Socket 1.Socket() 2.So

java网络编程socket\server\TCP笔记(转)

java网络编程socket\server\TCP笔记(转) 2012-12-14 08:30:04|  分类: Socket |  标签:java  |举报|字号 订阅 1 TCP的开销 a  连接协商三次握手,c->syn->s,s->syn ack->c, c->ack->s b  关闭协商四次握手,c->fin->s, s->ack-c,s->fin->c,c->ack->s c  保持数据有序,响应确认等计算开销 d