您的位置:首页 > 其它

基本网路概念学习

2015-12-20 13:08 218 查看

TCP/IP 四层网络结构

L2 数据链路层 或者叫 主机网络层,负责模数-数模转换,最常用的是以太网,无线以太网等。

L3 网络层,主要有IP协议,网络层发送的数据称为数据报, IP数据报包含20字节(通常)的头部,记录信息包括版本号,首部长度,原地址,目的地址,协议类型等信息。

L4 传输层 负责包以发送时的顺序接收。为了这个目的,这一层有两个主要的协议 TCP 和 UDP。

L5 应用层

TCP的开销 比 UDP 大。 TCP浪费这么大的开销是为了, 保证数据按照发送的顺序拼接起来。因为IP经过的路由不确定,所以接收到的IP包可能不是发送的顺序,所以TCP提供了额外的信息来保证消息能按顺序拼接起来。

IP协议的优点:

1,健壮,两点之间有多个路由,坏了一个,还可以通过别的路由到达。
2,IP协议与平台无关,必须让各种计算机进行通话。
3,IP协议上可以运行多种协议,常用的有TCP,UDP,ICMP(ping程序)


Java唯一支持的协议是TCP和UDP,应用程序建立在TCP和UDP之上, 其他协议,都只能在java程序中用代码实现。

IPv4 每个地址用4个字节标示 ,每个数字都是0-255 ,如192.168.1.1

所以每个IP包包含源地址和目的地址, 包含源地址是为了告诉接受者,该向谁回复。

IPv4的地址最多只有40亿多一点,无法向地球上每个人提供 。 现在正在向IPv6慢慢过渡。它将使用16字节地址。这真是足够用了。

IPv6的地址通常写成用冒号分割的8个区块,如:3FFE:FFFF:7654:FEDA:1245:BA98:3210:4562

IP地址都是数字,但人可记不住数字, 因此开发了域名系统DNS, 用来将人类易于记忆的主机名转换为IP数字地址。 当程序访问网络时,需要同时处理数字地址和相应的主机名。

端口

如果每台计算机同时只做一件事,那么只有IP地址就够了,可事实并非如此,那就通过端口号来区分同一台机器上运行的不同的程序 。 传输层协议有65535个端口,也就是可以跑这么多个不同的网络程序。

1024一下的端口,分配给知名的服务,比如HTTP,ssh, 监听这样端口的程序需要最高权限的用户才能启动,也就是root用户。 监听某个端口的意思是,从这个端口接收数据。但所有程序都可以给他们发送数据。

Internet 是以一种标准方式彼此对话的很大的计算机集合。

Internet不是唯一基于IP的网络,却是最大的一个。比如企业网络叫internet (内网)。

所有以10., 172.16-172.31, 192.168 开头的地址都刻意没有分配,可用于内网地址。

IPv4中 127开头的是回路地址。

IPv6中的回路地址是 0:0:0:0:0:0:0:1

NAT 网络地址转换

比如ISP只给了你一个IP地址 216.254.85.72,可是你家里有十几台计算机都要上网, 所以内网地址可以设置成192.168.254.xxx , 路由器会监视入站和出站的连接, 调整IP包中的地址。

对于出站的包,将源地址改成 路由器在网络上的外部地址: 216.254.85.72

对于入站的包,将目的地址改成一个本地地址 。

从网络外部,没人可以与我系统中的192.168.254.12对话,除非我主动发起连接。 或者配置路由器转发 216.254.85.72 到 192.168.254.12 的请求。

防火墙

过滤通常是基于网络地址和 端口的。 防火墙通常工作于 网络层和传输层

代理服务器

代理通常工作于 应用层,也有工作在传输层的。

代理服务器的问题是,它无法应付所有的协议。

通过HTTP作为通道建立协议, 最著名的是SOAP。

所以设置代理的意思是: 不直接访问服务器或者网站,而是去访问代理服务器,让代理服务器去访问某个网站,然后把相应返回给自己。 当然需要代理能够应付你所使用的协议。

本地缓存

Web服务器

IETF是 民间组织 多数人的意见和正在运行的代码

W3C 是厂商控制的团体,要交年费(5W美元)

PR public relation
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: