TCP/IP协议族(一)
摘要:TCP/IP协议族(一) HTTP简介、请求方法与响应状态码 接下来想系统的回顾一下TCP/IP协议族的相关东西,当然这些东西大部分是在大学的时候学过的,但是那句话,基础的东西还是要不时的回顾回顾的。接下来的几篇博客都是关于TCP/IP协议族的,本篇博客就先简单的聊一下TCP/IP协议族,然后聊一下
阅读全文
Wireshark命令行工具tshark
摘要:Wireshark命令行工具tshark 1、目的 写这篇博客的目的主要是为了方便查阅,使用wireshark可以分析数据包,可以通过编辑过滤表达式来达到对数据的分析;但我的需求是,怎么样把Data部分导出来,因为后续的工作主要针对数据包的Data部分,主要是对本地存储的.pcap文件进行解析。这时
阅读全文
tcp传输黏包
摘要:tcp传输黏包 tcpip协议使用"流式"(套接字)进行数据的传输,就是说它保证数据的可达以及数据抵达的顺序,但并不保证数据是否在你接收的时候就到达,特别是为了提高效率,充分利用带宽,底层会使用缓存技术,具体的说就是使用Nagle算法将小的数据包放到一起发送,但是这样也带来一个使用上的问题——黏包,
阅读全文
TCP
摘要:TCP 得不承认,tcp是一个非常复杂的协议。它包含了RFC793及之后的一些协议。能把tcp的所有方面面面具到地说清楚,本身就是个很复杂的事情。如果再讲得枯燥,那么就会更让人昏昏欲睡了。本文希望能尽量用稍显通俗的话把tcp描述清楚。 关于分层 请忘掉大学课本上学的七层模型,我们使用四层模型更为贴合
阅读全文
二层转发
摘要:二层转发原理 1 二层转发基础 这里的二层指的是计算机网络七层模型中的二层,从第一层到第7层分别是物理层、数据链路层、网络层、运输层、会话层、表示层和应用层。还有一种说法是4层(或者是5层)网络模型,分别是数据链路层、网络层、运输层和应用层,如果按照5层的说法还要加上物理层。这里的二层指的是数据链路
阅读全文
实现TCP断点上传,后台C#服务实现接收
摘要:实现TCP断点上传,后台C#服务实现接收 终端实现大文件上传一直都是比较难的技术,其中涉及到后端与前端的交互,稳定性和流量大小,而且实现原理每个人都有自己的想法,后端主流用的比较多的是Http来实现,因为大多实现过断点下载。但稳定性不能保证,一旦断开,无法续传。所以得采用另一种流行的做法,TCP上传
阅读全文
TCP的阻塞和重传
摘要:TCP的阻塞和重传 TCP的阻塞和重传机制 网络拥堵 现在网络上大部分的网络请求都是以TCP的方式进行传输的了。网络链路是固定的,各种链路情况也是不一样的。网络拥堵一直是TCP协议设计和使用的时候尽力要避免的。比如,从TCP协议的网络包协议设计来看,TCP使用一发一答的ACK的网络包确认方式,而不是
阅读全文
TCP粘包
摘要:TCP粘包分析与处理 TCP粘包现象 TCP粘包通俗来讲,就是发送方发送的多个数据包,到接收方后粘连在一起,导致数据包不能完整的体现发送的数据。 TCP粘包原因分析 导致TCP粘包的原因,可能是发送方的原因,也有可能是接受方的原因。 发送方 由于TCP需要尽可能高效和可靠,所以TCP协议默认采用Na
阅读全文
DNS
摘要:DNS 1.DNS是怎么工作的 首先我们可以很简单的理解DNS协议,它就是一个将域名与ip地址进行双向转换的协议,而消息类型只有查询和回应2种类型。那客户端查询域名,是要请求谁呢?答案是域名服务器,现在域名服务器分为以下4类,按照层次从上往下: 根域名服务器:最高层次最重要的域名服务器,它知道所有的
阅读全文
协议如何保证可靠传输
摘要:TCP 协议如何保证可靠传输 一、综述 1、确认和重传:接收方收到报文就会确认,发送方发送一段时间后没有收到确认就重传。 2、数据校验 3、数据合理分片和排序: UDP:IP数据报大于1500字节,大于MTU.这个时候发送方IP层就需要分片(fragmentation).把数据报分成若干片,使每一片
阅读全文
UDP vs. TCP
摘要:UDP vs. TCP 原文:UDP vs. TCP,作者是Glenn Fiedler,专注于游戏网络编程相关工作多年。 说在最前面的话 翻译这篇文章的初衷:我在工作中根本接触不到网络游戏编程,但是我不想把自己定义为‘网站开发工程师’,正像我师父告诉我的:“别说开发网站,太low!要说开发web应用
阅读全文
TCP/UDP简介
摘要:TCP/UDP简介 Socket小白篇-附加TCP/UDP简介 Socket 网络通信的要素 TCP和UDP Socket的通信流程图 1.Socket 什么是Socket Socket:又称作是套接字,网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为Socket。 Sock
阅读全文
传输层知识总结
摘要:传输层知识总结 传输层概述: 为什么要划分传输层? 既然网络层已经能把源主机上发出的数据传送给目的主机,那么为什么还需要加上一个传输层呢?这就需要我们理解主机用户应用层通信的主体,位于两台网络主机中真正的数据通信主体并不是这两台主机,而是两台主机中的各种网络应用进程.同一时间一台主机上可能有多个进程
阅读全文
TCP/IP协议
摘要:TCP/IP协议知识科普简介本文主要介绍了工作中常用的TCP/IP对应协议栈相关基础知识,科普文。本博客所有文章:http://www.cnblogs.com/xuanku/p/index.htmlTCP/IP网络协议栈TCP/IP网络协议栈分为四层, 从下至上依次是:链路层其实在链路层下面还有物理...
阅读全文
RPC框架
摘要:RPC框架实现 - 路由控制篇2015-04-27 22:26 by bangerlee,499阅读,1评论,收藏,编辑RPC(Remote Procedure Call,远程过程调用)框架是分布式服务的基石,实现RPC框架需要考虑方方面面。其对业务隐藏了底层通信过程(TCP/UDP、打包/解包、序...
阅读全文
TCP长连接与短连接
摘要:TCP长连接与短连接的区别1. TCP连接当网络通信时采用TCP协议时,在真正的读写操作之前,server与client之间必须建立一个连接,当读写操作完成后,双方不再需要这个连接时它们可以释放这个连接,连接的建立是需要三次握手的,而释放则需要4次握手,所以说每个连接的建立都是需要资源消耗和时间消耗...
阅读全文
逆地址解析协议
摘要:转载RARP:逆地址解析协议-读书笔记章节回顾:《TCP/IP详解卷1:协议》第1章 概述-读书笔记《TCP/IP详解卷1:协议》第2章 链路层-读书笔记《TCP/IP详解卷1:协议》第3章 IP:网际协议(1)-读书笔记《TCP/IP详解卷1:协议》第3章 IP:网际协议(2)-读书笔记《TCP/...
阅读全文
XMPP and SIP
摘要:过去一年多,一直关注这方面的技术和发展,这里有一个简单的介绍,我觉得比较简洁明了。我做了一点翻译,还有我的一些评估。SIP vs XMPP (Jabber)SIP and XMPP are application layer protocols mostly used to send voice or IM over Internet. SIP is defined by RFC 3621 and XMPP is defined in RFC 3920. Basically XMPP is evolved from IM and Presence, whereas SIP evolved fr
阅读全文
socket1
摘要:socket的那些事(1)TCP/IP简单介绍应用层 (Application):应用层是个很广泛的概念,有一些基本相同的系统级 TCP/IP 应用以及应用协议,也有许多的企业商业应用和互联网应用。传输层 (Transport):传输层包括 UDP 和 TCP,UDP 几乎不对报文进行检查,而 TCP 提供传输保证。网络层 (Network):网络层协议由一系列协议组成,包括 ICMP、IGMP、RIP、OSPF、IP(v4,v6) 等。链路层 (Link):又称为物理数据网络接口层,负责报文传输。Socket相关概念socket的英文原义是“孔”或“插座”。作为进程通信机制,取后一种意思。通
阅读全文
SOCKET网络编程细节问题(4)
摘要:SOCKET网络编程快速上手(二)——细节问题(4)5.慢系统调用及EINTR 还记得前面readn和writen函数么?里面有个EINTR,现在就来谈谈这个,这个很重要。 Linux世界有个叫信号的东西,感觉他就像一位隐士,很少遇到他,而他又无处不在。当你船到桥头时,他从天而降,将你领入另一片天地。(唉,博客再写下去我都可以改行了)前面已经初步窥探了信号的神奇,一个“小小”的SIGPIPE能让我们不知道怎么回事就惨遭“灭门”。那还有其他千千万万的信号呢,是不是也会对我们写的网络程序表现出神奇的现象。答案:有!还有很多! 写到这,才发现自己还没涉及网络编程涉及的那些函数,这也是一项基础知识的学
阅读全文