网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。 建立网络通信连接至少要一对端口号(socket)。socket本质是编程接口(API),对TCP/IP的封装,TCP/IP也要提供可供程序员做网络开发所用的接口,这就是Socket编程接口;HTTP是轿车,提供了封装或者显示数据的具体形式;Socket是发动机,提供了网络通信的能力。 Socket的英文原义...

之前我在关于计算机基础知识中说过了关于UDP的数据传输,它的特点是简单但是数据容易丢失,如果接受方失去连接,数据的发送方依旧会继续发送消息。就像两个人在使用对讲机讲话,一个人关闭了对讲机,另一个人依旧会讲话,但是这个人已经不会接受任何信息。UDP通过数据包(Datagram)进行传输。     在java中我们使用对象DatagramSocket进行传输。我们现在通过API进行...

每天我们都会使用浏览器去访问一些网站页面,但是每次访问时,你是否会想知道,浏览器和服务器到底做了些什么,才让你看到浏览器呈现给你的这些具有样式排版,乃至动画的页面? 本文需要知识前提:HTTP协议了解,TCP/IP协议了解,Socket编程了解。 1.浏览器收发HTTP报文 你可能会回答,浏览器向服务器端发送HTTP请求,服务器回复HTTP请求,再经过浏览器内核的渲染和javascript引擎的解...

上一篇:https://blog.csdn.net/qq_41938259/article/details/104916488基本实现了TCP服务器的建立,它支持多个用户的接入。但是一遍遍写创建sock、监听、接收、发送这些语句,令人十分烦躁,还好C++是面向对象编程,拥有继承、封装、多态等特性,我们可以建立一个XTcp.h头文件,用于建立XTcp类,而新建一个XTcp.cpp文件用于实现Xtcp...

今天接着昨天的学习来,昨天我复习了简单的TCP服务器的创建、绑定端口号、监听并接收信息,还有大端(网络字节流)小端(X86架构CPU使用的字节流)的概念。 今天复习发送信息send函数、recv函数与多线程实现多个用户同时连接。send函数用于发送一段数据,recv函数用于接收数据。 如下所示:  与昨天的代码连在一块这才是完整的代码,功能比较简单,当用户键入q时候退出连接但不知道为什么...

上次的两次面试,一位面试官认真的看了我的博客(十分感动),然后建议我好好复习下socket还有操作系统。感觉找工作好多都要求socket编程,于是我再 预习复习一下。主要是当时这门课学校老师照本宣科,连代码都不讲,也很没意思,学生混老师也混。下面切入正题吧,我今天就复习这么多。 这是在WIN上创建socket,创建项目时使用win32控制台,要注意linux上是没有windows.h头文件的,所以...

目录 1、socket流分类 1.1、阻塞模式 1.2、非阻塞模式 2、多路复用 2.1、select相关API介绍 2.2、select 函数相关的几个宏 2.3、select使用范例 3、select实现机制 3.1、select 模型 3.2、FD_ZERO、FD_SET、FD_ISSET用法 4、代码演练 4.1、服务器 4.2、客户端 4.3、依赖的头文件(socket_info.h) ...

套接字使用TCP提供了两台计算机之间的通信机制。 客户端程序创建一个套接字,并尝试连接服务器的套接字。 当连接建立时,服务器会创建一个 Socket 对象。客户端和服务器现在可以通过对 Socket 对象的写入和读取来进行通信。 java.net.Socket 类代表一个套接字,并且 java.net.ServerSocket 类为服务器程序提供了一种来监听客户端,并与他们建立连接的机制。 以下步...

socket编程简单入门

socket  编程

  

2020-05-18 12:54:28

TCP/IP 协议简介 TCP/IP 是基于 TCP 和 IP 这两个最初的协议之上的不同的通信协议的大的集合。 IP协议 负责把数据从一台计算机通过网络发送到另一台计算机。数据被分割成一小块一小块,然后通过IP包发送出去。由于互联网链路复杂,两台计算机之间经常有多条线路,因此,路由器就负责决定如何把一个IP包转发出去。IP包的特点是按块发送,途径多个路由,但不保证能到达,也不保证顺序到达。 TC...

Socket编程实践模拟通信

socket  编程

  

2020-06-13 03:59:10

本篇记录Socket与ServerSocket进行通信过程,服务器端使用线程,一直监听客户端的请求,并返回消息给客户端。 【1】客户端代码 【2】服务端代码 ① 测试方法如下: ② 线程如下 【3】运行测试 首先运行服务端: 此时还没有socket实例化,等待连接建立。 运行客户端: 此时,服务端输出如下: 注意对比客户端和服务端建立socket实例的时间和二者的hashcode! 【4】频繁通信...

Devc下socket编程注意事项 1.需要在【工具T】->【编译选项C】->【编译器】中勾选编译时加入以下命令,然后在输入框中输入-lwsock32,确定后关闭该窗口,(否则运行程序时会出现很多函数未定义的编译错误),步骤如下截图所示: 2.不需要在代码中添加#pragma comment(lib,“ws2_32.lib”)语句也能正常运行源文件! 我的简单s...

文章目录 一,Tomcat底层原理介绍 1,客户端和服务端的交互详解 2,写一个客户端的小例子 3,写一个服务端的小例子 二,Tomcat服务器实战 一,Tomcat底层原理介绍 首先我们需要先了解HTTP协议,请求头,请求行,请求体,响应头,响应行,响应体,具体请移步百度! 其次,Tomcat的底层是socket编程,没有socket基础的同学请往右拐👇 https://www.cnblogs...

socket :网络编程 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。 建立网络通信连接至少要一对端口号(socket)。socket本质是编程接口(API),对TCP/IP的封装,TCP/IP也要提供可供程序员做网络开发所用的接口,这就是Socket编程接口;HTTP是轿车,提供了封装或者显示数据的具体形式;Socket是发动机,提供了网络通信的能力...