
网络编程
文章平均质量分 76
左手码农
创世的第七天,他用左手轻轻地敲下:Hello,world!
展开
-
浅谈localhost
在计算机网络中,localhost 代表了本主机,通过使用localhost可以访问自己主机的网络服务。注意,使用localhost的时候,使用的是回环网络接口,这会绕过本地网络接口硬件,独立于任何网络配置(不受网络防火墙和网卡相关的的限制)。在windows7系统的hosts文件中,可以看到:# localhost name resolution is handled within原创 2015-05-11 16:05:17 · 6100 阅读 · 0 评论 -
域名系统DNS
DNS,域名系统,是一种C/S类型的应用程序,用于映射名字和地址的信息,能够将地址映射为名字,也能够将名字映射为地址。Hosts文件与DNS每当有映射需求的时候,电脑会优先在本地的hosts中查找,如果能完成名字地址解析则结束,不能的话则再向DNS发送请求。当网络规模较小的时候,可以直接使用计算机自身的hosts文件进行映射。但是在网络规模较大,特别的在现有的互联网中,需要的映射信息量原创 2016-07-15 17:28:42 · 589 阅读 · 0 评论 -
网际协议IP
在IP层的分组叫做数据报。本节主要介绍数据报的格式,以及在 linux 中是如何定义IP分组头格式。首先,数据报的格式如下:其中:1、版本:有版本4和版本62、首部长度:定义数据报的总长度,以4字节为单位计算。首部长度在 20~60字节之间。3、服务类型:前三位为优先位,后面两位为TOS位,最后一位没有使用。4、总长度:定义以字节计的数据报总长度(首部加上数据)原创 2015-04-16 20:53:35 · 1231 阅读 · 0 评论 -
ping的实现和代码分析
转自 http://blog.youkuaiyun.com/zzucsliang/article/details/41407387介绍 ping命令是用来查看网络上另一个主机系统的网络连接是否正常的一个工具。ping命令的工作原理是:向网络上的另一个主机系统发送ICMP报文,如果指定系统得到了报文,它将把报文一模一样地传回给发送者,这有点象潜水艇声纳系统中使用的发声装置。分析转载 2016-04-17 17:10:48 · 941 阅读 · 0 评论 -
Epoll简介以及例子
第一部分:Epoll简介在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。相比于select,epoll最大的好处在于它不会随着监听fd数目的增长而降低效率。因为在内核中的select实现中,它是采用轮询来处理的,轮询的fd数目越多,自然耗时越多。epoll的接口非常简单,一共就三个函数:1.转载 2016-04-15 17:13:31 · 3217 阅读 · 0 评论 -
linux下ACE工具包的编译安装
ACE简介ACE(ADAPTIVE 通信环境)是一种广泛使用的主机基础设施中间件。ACE库包含约240,000行c++代码,约500个类。ACE软件包的基础是ACE OS Adaptation层和C++ wrapper facades 的结合,封装了核心OS并发网络编程机制。ACE的较高层建立在这一基础上,提供了可复用的框架、网络服务组件、基于标准的中间件等。这些中间件层联合起来,简化了网原创 2016-04-07 16:29:55 · 2145 阅读 · 1 评论 -
使用 SO_KEEPALIVE 选项检测TCP连接
对于TCP连接来说,如果客户端由于一些异常情况导致断网,从而未能向服务器发起FIN关闭消息,服务端在没有设置存活检测的情况下,该连接会在一定时间内保持存在,有可能会使服务器接入资源耗尽,导致accept失败。解决这个问题,可以通过使用心跳包的方法原创 2015-09-08 17:05:52 · 2741 阅读 · 0 评论 -
套接字的使用
Java使用了两套类来实现套接字:一套是 socket 和 serversocket 类,基于 tcp 协议实现;一套是 datagramsocket 类,基于udp协议实现。一、socket类socket类有四种构造函数:(1)socket(string address, int port)该构造函数指定了本机的地址和端口号,并且会检索该制定的端口号是否开放。(2)soc原创 2015-07-14 12:49:45 · 1208 阅读 · 0 评论 -
Linux网络驱动程序
Linux 的网络系统主要是基于 BSD UNIX的套接字机制。在系统与驱动程序之间定义了数据结构 sk_buff进行数据传输。系统支持对发送数据和接收数据缓存,提供流控机制并提供对多协议的支持。1、 linux 网络驱动程序的体系结构linux 网络驱动程序的体系结构从上到下分为4层,各层作用如下:(1) 网络协议接口层向网络层协议提供统一的数据包收发接原创 2015-07-08 11:44:50 · 1632 阅读 · 0 评论 -
地址解析协议(ARP)
地址解析协议(ARP),作用是将逻辑地址映射为物理地址,即将IP地址和物理地址关联起来。当主机或路由器想要知道网络上另一台主机或者路由器的物理地址的时候,它就会发送ARP查询分组。这个分组包括发送端的物理地址和IP地址,以及接收端的IP地址。因为发送端不知道接收端的物理地址,所以查询就在网络上广播。ARP查询分组将会被网络上的每一个主机或者路由器接收和处理。但是,只有目的接收者才会识别AR原创 2015-06-06 20:52:28 · 1796 阅读 · 0 评论 -
Trace命令的实现
Trace命令的实现【trace原理】traceroute是用来跟踪路由的命令,可以查看数据包从一端到另一端的路线。当源执行traceroute的时候,第一个数据包的TTL设置为1,那么下一跳的路由器收到数据包之后会丢弃数据包,并且会向源发送一条错误信息,源通过阅读错误信息从而得知发送错误信息的路由器就是第一跳。源第二次发送数据包的时候把TTL的值设置为2,第二跳的路由器发送错误信息过原创 2015-05-12 13:03:10 · 1715 阅读 · 0 评论 -
linux命令详解:tc
来自:http://blog.chinaunix.net/uid-10101261-id-335675.html名称:tc - 显示/维护流量控制设置命令格式: tc qdisc [ add | change | replace | link ] dev DEV [ parent qdisc-id | root ] [ handle qdisc-id ] qdisc [转载 2016-08-05 15:00:31 · 11044 阅读 · 0 评论