您的位置:首页 > 理论基础 > 计算机网络

网络编程基础知识

2016-12-16 00:04 260 查看

网络编程基础知识

相关缩略词

HTTP:超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。

FTP: 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。

TCP/IP协议: Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本的协议、Internet国际互联网络的基础,由网络层的IP协议和传输层的TCP协议组成。TCP/IP 定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的协议来完成自己的需求。通俗而言:TCP负责发现传输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地。而IP是给因特网的每一台联网设备规定一个地址。

URL :统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。[

网络的优势

所谓计算机网络,就是把分布在不同地理区域的计算机与专门的外部设备用通信线路互联成一个规模大、功能强的网络系统。从而使众多的计算机可以方便地互相传递信息、共享硬件、软件、数据信息等资源。

计算机网络是现代通信技术与计算机技术相结合的产物,计算机网络可以提供以下一些主要功能。

资源共享

信息传输与集中处理

均衡负荷与分布处理

综合信息服务

网络分类

计算机网络的品种很多,根据各种不同的分类原则,可以得到各种不同类型的计算机网络。计算机网络通常是按照规模大小和延伸范围来分类的,常见的划分为:

* 局域网(LAN):指在一个较小地理范围内的各种计算机网络设备互连在一起的通信网络,可以包含一个或多个子网,通常局限在几千米的范围之内。

* 城域网(MAN):主要是由城域范围内的各局域网之间互连而构成的,现在很少提起这个概念。

* 广域网(WAN):是由相距较远的局域网或城域网互连而成,通常是除了计算机设备以外,还要涉及一些电信通讯方式。

Internet可以视为世界上最大的广域网。

网络分层:

TCP/IP的网络分层模型

层级协议
应用层HTTP协议/FTP/SMTP/POP3…
传输层TCP协议
网络层IP协议(Internet Protocol,他负责为网络上的节点分配唯一标识)
物理层+数据链层传输最底层二进制
TCP/IP协议 –一起被设计出来,于是经常有人把他们放在一起提。

IP地址与DNS(域名系统)

IP地址:就是为网络上的每个物理节点(广义的)分配一个“门牌号”。通过IP地址,可以保证网络上的数据包能够正确的找到每个物理节点。

IP地址用于标识网络中的一个通信实体,这个通信实体可以是一台主机,也可以是一台打印机,或者是路由器的某一个端口。而在基于IP协议网络中传输的数据包,都必须使用IP地址来进行标识。

IPv4:32位的地址。2^32次方=4G=40亿个网络地址,中国分到的网络地址很少,所以可能一整个小区共用一个动态IP地址

IPv6:128位的地址,每个人都可以分到无数多个网络地址。

IP地址是数字型的,IP地址是一个32位(32bit)整数(2^32次方=4G=40亿个网络地址,中国分到的网络地址很少,所以可能一整个小区共用一个动态IP地址),但通常为了更加便于记忆,通常也把它分成4个8位的二进制数组成,每8位之间用圆点隔开,每个8位整数可以转换成一个0~255的十进制整数,因此我们看到的IP地址常常是如下形式:202.9.128.88。

IP地址:相当于一个门牌号。IP地址保证网络上的数据包能正确的找到对应的物理节点,但每个物理节点上可能有多个应用程序在同时对外提供服务。

IP 地址

* 连接至网络的每台计算机都是唯一的

* 32 位数字,四个用点号分隔的数字

* 包括网络 ID 和主机 ID

* 网络的类包括 A、B、C和 D 类E

* 0~126

* 128~191

* 192~223

* 127.0.0.1

* 192.168.10.179

* 10.11.0.1

域名系统

* 将特定 IP 地址映射至字符串

* 映射由域名服务器系统维护

端口

用于实现程序间的通信

如果把IP地址理解为某个人所在地方的地址(包括街道和门牌号),但仅有地址还是找不到这个人,因为这个房子里可能住了很多人,还需要他的房间号才可以找到这个人。 因此如果把应用程序当做人,把计算机网络当做类似邮递员的角色,当一个程序需要发送数据时,需要指定目的地的IP地址和端口,如果制定了正确的IP地址和端口号,计算机网络就可以将数据送给该IP地址和端口所对应的程序。

常用的端口

协议端口
Telnet23
简单邮件传输协议25
文件传输协议21
超文本传输协议80
端口:==每个应用在网络上通信时,占用一个端口。 端口相当于房间号。 端口保证到了物理节点的数据包能够找到对应的应用程序。==

端口的约定:(0~65535个端口)

* 0~1023:公用端口。例如:80(HTTP),21(FTP),110(POP)……

* 1023~49151:应用程序端口。 MySQL:3306; Oracle:1521; 一般靠前的端口号都默认被相应的程序占用了,自己用的话推荐使用靠后的端口,例如从30000开始使用。

* 49152~65535: 动态分配端口。

端口是一个16位的整数,用于表示数据交给哪个通信程序处理。因此,端口是应用程序与外界交流的出入口,它是一种抽象的软件结构,包括一些数据结构和I/O(基本输入/输出)缓冲区。

==不同的应用程序处理不同端口上的数据,同一台机器上不能有两个程序使用同一个端口==,端口号可以从0到65535,通常将它分为三类:

* 公认端口(Well Known Ports):从0到1023,它们紧密绑定(Binding)一些服务。

* 注册端口(Registered Ports):从1024到49151。它们松散地绑定一些服务。

* 动态和/或私有端口(Dynamic and/or Private Ports):从49152到65535,这些端口是应用程序使用的动态端口,应用程序一般不会主动使用这些端口。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: