Socket建立网络连接方法

建立Socket连接至少需要一对套接字,其中一个运行于客户端,称为ClientSocket ,另一个运行于服务器端,称为ServerSocket 。

  套接字之间的连接过程分为三个步骤:服务器监听,客户端请求,连接确认。

  1、服务器监听:服务器端套接字并不定位具体的客户端套接字,而是处于等待连接的状态,实时监控网络状态,等待客户端的连接请求。

  2、客户端请求:指客户端的套接字提出连接请求,要连接的目标是服务器端的套接字。

  为此,客户端的套接字必须首先描述它要连接的服务器的套接字,指出服务器端套接字的地址和端口号,然后就向服务器端套接字提出连接请求。

  3、连接确认:当服务器端套接字监听到或者说接收到客户端套接字的连接请求时,就响应客户端套接字的请求,建立一个新的线程,把服务器端套接字的描述发给客户端,一旦客户端确认了此描述,双方就正式建立连接。

 

时间: 2024-10-11 12:19:21

Socket建立网络连接方法的相关文章

Java网络编程从入门到精通(14):多种多样的建立网络连接的方式

在上一篇文章中我们讨论了Socket类的基本用法,并给出的例子中使用Socket类连接服务器时使用了一种最简单的连接方式,也就是通过IP和端口号来连接服务器.而为了使连接服务器的方式更灵活,Socket类不仅可以通过自身的构造方法连接服务器,而且也可以通过connect方法来连接数据库. 一.通过构造方法连接服务器 我们可以通过6个重载构造函数以不同的方式来连接服务器.这6个重载的构造函数可以分为两类: 1. 自动选择IP     这种方式是最常用的.所谓自动选择IP,是指当本机有多块网卡或者在

图说使用socket建立TCP连接

在网络应用如火如荼的今天,熟悉TCP/IP网络编程,那是最好不过.如果你并不非常熟悉,不妨花几分钟读一读. 为了帮助快速理解,先上个图,典型的使用socket建立和使用TCP/UDP连接过程为(截图来源戳这里): 下面仅讲述TCP连接建立的过程. (参考资料来自这里) 1. Initial State (初始阶段) o TCP is connection based, ... establishing it is a complex multistage process o initially

使用VC建立网络连接并访问网络资源

目录 1. 提出问题 2. 解决方案 1. 提出问题 在windows下可以通过系统操作,将局域网的资源映射到本地,从而实现像本地数据一样访问网络资源.实际上这些步骤也可通过代码调用win32函数实现,前提是你得知道目标机器的地址以及密钥. 2. 解决方案 直接上VC的实例代码: #include <Windows.h> #include <iostream> #include <fstream> #pragma comment(lib, "mpr.lib&q

几种常见的网络装置汇总以及网络连接方法

首先,对于win7的笔记本而言,由于笔记本中有内嵌的无线网卡,可以直接设置wifi热点:下载connectify,安装完成后就可以直接当做wifi热点了.值得指出的是,当然也可以用市面上的随身wifi作为工具来设置wifi了.但是,自认为这是没有意义的,也即是间接地购买了一个工具. 随身wifi本质上就是一个无线路由器,无线路由器就是将宽带里面的信号通过随身wifi热点来分享出来,这也就是很多人都带随身wifi出差的原因.例如,在酒店中,通过笔记本(当然笔记本就可以不需要这个随身wifi了,但是

socket 简历网络连接

# server 代码 import socketimport threadingimport time# s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)# s.connect(('www.sina.com.cn',80))# s.send(b'GET / HTTP/1.1\r\nHost: www.sina.com.cn\r\nConnection: close\r\n\r\n')## buffer = []# while True:

网络连接相关基础知识笔记

一.常说的TCP/IP的含义 TCP/IP协议簇并不仅仅指TCP协议和IP协议,实际它包括了一系列协议组成的集合,如:TCP,IP,UDP,FTP,SMTP,DNS,ARP,PPP等 TCP与UDP协议都属于传输层协议,但有很大不同,TCP是面向连接的协议,提供的是可靠的数据流服务,TCP采用"带重传的肯定确认"机制来实现传输的可靠性,实现了一种"虚电路",因为从物理上来说,并不是真正在两台主机间建立了连接,这种连接只是存在于逻辑上的.最大的开销出现在通信前建立连接

Android基础入门教程——7.6.1 Socket学习网络基础准备

Android基础入门教程--7.6.1 Socket学习网络基础准备 标签(空格分隔): Android基础入门教程 本节引言: 为了照顾没学过Java Socket的初学者,或者说捋一捋Android开发中涉及到的网络协议相关的概念, 毕竟面试的时候,面试官来了句给我说下网络协议有几层?那么IP协议在哪层?Socket是什么鬼? 分哪几种?TCP和UDP协议又在哪层?有什么区别-嗯,这-所以学习本节概念性的理论还是很有 必要的!那么话不多说,开始本节内容~ 1.OSI七层网络模型浅析 当然,

linux网络连接

ssh:安全登录远程主机或运行远程命令(ssh:Secure Shell) telnet:登录远程主机(不安全) scp:在远程主机和本地间安全传输文件 sftp:在远程主机和本地间安全传输文件(交互式) ftp:在远程主机和本地间传输文件(交互式,不安全) 在linux系统中,很容易在机器之间建立网络连接,进行远程登录及文件传输.不过需要你确认这样做的安全性. linux网络连接

Android开发:本机Tomcat搭建服务器,客户端socket网络连接不上问题以及D-LINK端口转发设置

我是用自己的电脑搭建服务器,首先问题是我们需要在路由器上端口映射,外网才能访问到自己的电脑,如何端口映射可以看看这篇文章: http://blog.csdn.net/zhoubin1992/article/details/45917775 一.D-LINK端口转发设置 我的是D-link如图: 名称写你客户端的名称. IP地址:路由器给本机分配的IP地址,一般以192.168开头.查询方法:cmd下ipconfig 填写私有端口就是路由器需要打开的端口,也可以设置一个区间 公共端口的就是外网要访