文章教程

Socket 编程基础:打开通往网络的大门

在计算机网络中,Socket编程是实现网络通信的基石之一。通过创建套接字、绑定、监听和连接等基本操作,Socket编程为应用程序提供了一种灵活、可靠的通信方式。本文将深入介绍Socket编程的基础知识,帮助初学者理解如何打开通往网络的大门。1. 什么是Socket?1.1 套接字的概念套接字(Socket)是实现网络通信的一种机制,它允许应用程序在不同计算机 …

socket库:Python实现TCP/IP客户和服务器通信

前言套接字除了前文用于分析网络地址等功能之外,还可以配置一个服务器,监听到来的消息。比如你在网络上跟网络机器人聊天,你发送数据到机器人(服务器),然后服务器反馈聊天数据信息给你。当然,机器人的回复还涉及机器学习,但简单的消息反馈涉及的就是套接字的知识。而且,如果你直接将服务器配置为连接到其他应用的客户端,那么双向通信也可以实现。(比如QQ聊天)简单的搭建服务 …

socket连接数受端口号的限制?谬论

初学网络的同学对 socket 可能会有误解:服务器能接受的最大连接数跟端口的个数 65536 有关系!为什么会有这样的误会?服务器端的程序无非是这样的:socket();创建socketbind();绑定IP和端口号listen();设置监听队列fd = accept(); 建立TCP连接socket 绑定的端口号用于监听客户端的连接使用,所以在写客户端代 …

玩转Linux内核套接字(socket)原理与机制

1、套接字基本知识套接字(socket)就是对网络当中不同主机上面的应用程序进程之间进行双向通信的端点的抽象。套接字类型:流式套接字、数据报套接字、原始套接字。套接字作用:主要完成两个应用程序之间的数据传输。套接字本质:两个网络各自通信连接中的端点。2、套接字表示方式套接字socket=(ip地址:端口号),套接字表示方法采用点分十进制的ip地址后面写上端口 …

eBPF 技术应用云原生网络实践系列之基于 socket 的 service

相关阅读:《eBPF技术应用云原生网络实践系列之kubernetes网络》背景介绍Kubernetes 中的网络功能,主要包括 POD 网络,service 网络和网络策略组成。其中 POD 网络和网络策略,都是规定了模型,没有提供默认实现。而 service 网络作为 Kubernetes 的特色部分,官方版本持续演进了多种实现:在 Kubernetes …

Linux网络编程——详解SOCKET(linux网络编程接口)

一、预备知识大端模式、小端模式大端字节序(Big Endian):最高有效位存于最低内存地址处,最低有效位存于最高内存处;小端字节序(Little Endian):最高有效位存于最高内存地址,最低有效位存于最低内存处。网络字节序我们已经知道,内存中的多字节数据相对于内存地址有大端和小端之分,磁盘文件中的多字节数据相对于文件中的偏移地址也有大端小端之分。网络数 …

从Linux内核理解Java怎样实现Socket通信

前言前段时间看了【图解 TCPIP】和 【TCPIP 详解 卷1:协议】,大致了解了 TCPIP 通信,弄清楚了计算机之间是怎么通信的。我们目前使用的 HTTP , FTP , SMTP , DNS , HTTPS , SSH , MQTT , RPC 等都是以 TCPIP协议 为基础。下图针对的是 传输层 为 TCP 。Linux 内核为我们屏蔽了 TCP …

Linux 内核网络之 bind 的实现(linux中bind)

sys_bind 系统调用是将一个本地地址及传输层的端口和套接口进行关联起来,一般作为客户端进程不用关心它的本地地址和端口是什么,所以也不需要进行绑定,内核会自动为其分配一个本地地址和端口号的。*fd, 进行绑定的套接口文件描述符umyaddr,进行绑定的地址addrlen,进行绑定的地址的长度。由于不同协议族的地址描述结构是不一样的,因此需要标识地址长度。 …