李成笔记网

专注域名、站长SEO知识分享与实战技巧

【Socket】解决UDP丢包问题

一、介绍

UDP是一种不可靠的、无连接的、基于数据报的传输层协议。相比于TCP就比较简单,像写信一样,直接打包丢过去,就不用管了,而不用TCP这样的反复确认。所以UDP的优势就是速度快,开销小。但是随之而来的就是不稳定,面向无连接的,无法确认数据包。会导致丢包问题。

网络编程懒人入门(十四):到底什么是Socket?一文即懂

本文由cxuan分享,原题“原来这才是 Socket”,有修订。

1、引言

「Linux」——select和epoll详解


select和epoll详解

    • select和epoll的区别(面试常考)
    • select
      • 一、什么是select
        • 1.select函数原型
        • 2.参数解释
        • 3.参数timeout取值
        • 4.返回值
        • 5.监控原理
      • 二、select就绪条件

linux网络编程Socket之RST详解

产生RST的三个条件:

1. 目的地为某端口的SYN到达,然而该端口上没有正在监听的服务器;

2. TCP想取消一个已有的连接;

3. TCP接收到一个根本不存在的连接上的分节;


现在模拟上面的三种情况:

client:

Python Telnet弱口令爆破脚本及遇到的错误与问题

写得时候遇到了一个很大的问题,就是我在发送用户名,接受用户名就会一直卡住。然后等了好久后提示

recv ‘\r\nSession timed out.\r\n\r\nTelnet Server has closed t’

虚拟机服务器是Win7的 主机客户也是Win7。

1、一开始觉得是因为socket 设置的问题,上网查了很久,也按他们的方法改了,但都不管用。

2、后来觉得是因为读取行的问题,linux和Windows返回行信息不同,所以没办法读取到,所以将

搞了半天,终于弄懂了TCP Socket数据的接收和发送,太难

本文将从上层介绍Linux上的TCP/IP栈是如何工作的,特别是socket系统调用和内核数据结构的交互、内核和实际网络的交互。写这篇文章的部分原因是解释监听队列溢出(listen queue overflow)是如何工作的,因为它与我工作中一直在研究的一个问题相关。

建好的连接怎么工作

先从建好的连接开始介绍,稍后将解释新建连接是如何工作的。

内核管理的每一个TCP文件描述符都是一个struct, 它记录TCP相关的信息(如序列号、当前窗口大小等等),以及一个接收缓冲区(receive buffer,或者叫receive queue)和一个写缓冲区(write buffer,或者叫write queue),后面我会交替使用术语buffer和queue。如果你对更多细节感兴趣,可以在Linux内核的net/sock.h中看到socket结构的实现。

Rust Socket编程之异步Socket编程

前言

在本章节中,我们将深入探讨如何在Rust中实现异步的Socket编程。异步编程允许我们在执行网络操作时避免阻塞线程,从而提升性能和响应速度。在传统的同步编程中,程序在等待I/O操作完成时会阻塞当前线程,而在异步编程中,我们可以通过非阻塞方式处理I/O,继续执行其他任务。这对于需要处理大量并发连接的服务器应用程序尤其重要。

Linux C语言socket网络编程

Linux C语言socket网络编程


需要Linux C 服务器开发视频学习资料的朋友请后台私信【架构】获取

注意:本文是按照 TCP、UDP的工作过程进行总结的

  1. TCP套

10分钟学会Socket通讯,学不会你打我

Socket通讯是软硬件直接常用的一种通讯方式,分为TCP和UDP通讯。

在我的职业生涯中,有且仅用过一次UDP通讯。而TCP通讯系统却经常写,正好今天写了一个TCP通讯的软件。总结一下内容

软件使用C#编程原因写的,为了能够使用所有的电脑,采用了NET Framework 4.0。

Linux TCP RST情况

导致“Connection reset”的原因是服务器端因为某种原因关闭了Connection,而客户端依然在读写数据,此时服务器会返回复位标志“RST”,然后此时客户端就会提示“java.net.SocketException: Connection reset”。可能有同学对复位标志“RST”还不太了解,这里简单解释一下:

<< < 1 2 3 4 > >>
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言