netstat -a (--all) : show both listening and non-listening sockets

默认是不显示正在侦听的进程,只显示已经established的

netstat 结果中:

0.0.0.0 和 * : 都表示机器所有的ip地址,如127.0.0.1(本机loopback地址,不能对外提供服务),192.168.1.1 ,192.168.2.2

::: - 前两个:: 是ip v6的本机所有地址?

使用netstat -tual看到的端口: 一般低端口通常是作为服务、提供给外部其他机器、来访问用的。一般访问外部网络服务的、

本机作为客户端的通常是高端口且是随机端口数。

xinetd.d下的几个服务:

  chargen:char-gen, 字符生成服务

  echo: 回显服务,不同于本地命令/bin/echo(和shell本身的builtin),主要用于向远程客户机回显消息服务??

  time,daytime,都是用来响应远程客户机查看时间/日期的服务

??-stream: 用于tcp的流信息服务

??-dgram: dgram数据报,用于udp协议的报文服务

两者的配置基本相同,区别是socket_type,一个是dgram,一个是stream

------

socket是标识网络主机上某个网络进程的抽象的符号,用ip:port来表示,是网络应用程序进程跟外部网络进行数据交换的“插头/插座”

这样,网络进程就不必去关心外部网络的运作过程,只要把它的请求和接受跟套接字socket说说沟通就行了

进程通过绑定到套接字(由目的ip,协议类型,端口号指定)实现通信,过程是:

服务器进程<->ServerSocket<->network management software<->ic卡  <->   ic卡<->network management soft<->ClientSocket<->客户端进程

服务器套接字处于监听状态;

三次握手?:

客户端socket描述服务器端socket,发出connection request,这时服务器就晓得了客户端的套接字信息了;

服务器端响应请求,创建一个新的 “ 线程 ”(这时还没有建立连接的) ,将服务器套接字描述发给客户端,这时客户端就晓得了服务器的套接字信息了;

客户端发送ACK确认,这样双方都确认对方的信息了,就可以正式建立一个连接了

套接字地址家族(address families):基于文件的AF_unix和基于网络的AF_inet

端口号:占两个字节,范围0-65535, 低于1024的端口号是系统保留号

netstat -atu时,udp端口没有listen?
因为listen是为了监听外部传来的“ 建立新连接”的请求,只有tcp才需要连接,而udp是面向消息的,不需要连接的

网络程序进程的套接字:

  调用listen()函数轮循监听外部tcp连接请求,如果有新请求,就把它放在请求队列中

  然后调用accept()函数从队列中取出请求,建立新的连接...

udp使用的目的:广播和多播不得不?使用udp(创建多个tcp连接进行广播和多播太消耗系统和网络资源了?);

  所以速度快,处理报文丢失的方法是设置超时;udp不需要listen和accept,可以使用单进程完成所有客户的请求

netstat miscellaneousness的更多相关文章

  1. Linux下用netstat查看网络状态、端口状态(转)

    转:http://blog.csdn.net/guodongdongnumber1/article/details/11383019 在linux一般使用netstat 来查看系统端口使用情况步.  ...

  2. Linux命令:ps,netstat,top

    ps ps用于查看当前运行的进程.如果想查看动态的进程信息,可以使用top命令.查看详细命令帮助使用man ps. ps最常用的选项组合就是ps aux: # ps aux USER PID %CPU ...

  3. linux之netstat命令

    netstat用于显示各种网络相关的信息,如网络连接,路由表接口状态(interface statistics), masquerade连接,多播成员(Multicast Memberships)等等 ...

  4. netstat相关

    1. netstat基本参数: 参数 说明 输出 -a 列出所有连接. 列出 tcp, udp 和 unix 协议下所有套接字的所有连接.然而这些信息还不够详细,管理员往往需要查看某个协议或端口的具体 ...

  5. PROC 文件系统调节参数介绍(netstat -us)

    转自:http://www.cnblogs.com/super-king/p/3296333.html /proc/net/* snmp文件 Ip: ip项 Forwarding        : 是 ...

  6. netstat

    netstat再解读 C:\Users\Administrator>netstat -nb 活动连接 协议 本地地址 外部地址 状态 TCP ESTABLISHED [mysqld.exe] T ...

  7. netstat监控大量ESTABLISHED连接与Time_Wait连接问题

    问题描述: 在不考虑系统负载.CPU.内存等情况下,netstat监控大量ESTABLISHED连接与Time_Wait连接. # netstat -n | awk '/^tcp/ {++y[$NF] ...

  8. 运维之netstat

    实用命令实例   1. 列出所有端口 (包括监听和未监听的)   列出所有端口 netstat -a # netstat -a | more Active Internet connections ( ...

  9. netstat命令

    netstat命令会罗列出当前所有的网络连接.连接统计以及路由表信息.默认情况下,netstat命令将罗列出本地计算机所有开启的端口情况,以及它所连接的外部计算机情况. 端口就像一所房子的房门一样.数 ...

随机推荐

  1. 67.Android中的数据存储总结

    转载:http://mp.weixin.qq.com/s?__biz=MzIzMjE1Njg4Mw==&mid=2650117688&idx=1&sn=d6c73f9f04d0 ...

  2. bzoj 1030 fail树dp

    dp[i][j][0]代表当前匹配到i号点走了j步且没到过单词节点,1代表到过,直接转移. #include<iostream> #include<cstdio> #inclu ...

  3. 【poj1733】 Parity game

    http://poj.org/problem?id=1733 (题目链接) 题意 一个由0,1组成的序列,每次给出一段区间的奇偶,问哪一条信息不合法. Solution 并查集. 题目中序列的长度有很 ...

  4. 判断IE和Edge

    //判断是否是IE浏览器,包括Edge浏览器function IEVersion() { var userAgent = navigator.userAgent; if (!!window.Activ ...

  5. AngularJs 键盘事件和鼠标事件

    ngKeydown/ngKeypress/ngKeyup 该指令在按键按下/按键按下/按键松开时执行指定表达式. ngKeydown和ngKeypress略有不同,目前的测试是ngKeypress针对 ...

  6. Linux 吃掉我的内存

    在Windows下资源管理器查看内存使用的情况,如果使用率达到80%以上,再运行大程序就能感觉到系统不流畅了,因为在内存紧缺的情况下使用交换分区,频繁地从磁盘上换入换出页会极大地影响系统的性能.而当我 ...

  7. 八数码问题(紫薯P199)

    #include <algorithm> #include <cstdio> #include <cstring> #include <iostream> ...

  8. ubuntu 远程开机

    启动者(电脑A)  ----------->  被远程开启的电脑(电脑B) 一.被远程开启的电脑(电脑B):1. 重新开机,并进到BIOS设定2. 把Wake On Land / Wake On ...

  9. js JS 浮点计算BUG

    Number.prototype.toRound = function(d) { var s=this+"";if(!d)d=0; if(s.indexOf(".&quo ...

  10. python学习笔记-(九)模块

    基础知识 1. 定义 模块:用来从逻辑上组织python代码(变量,函数,类,逻辑----实现一个功能),本质就是.py结尾的python文件(文件名:test.py,对应的模块就是test) 包:用 ...