频道栏目
首页 > 资讯 > 其他 > 正文

网络编程概述socket

18-02-22        来源:[db:作者]  
收藏   我要投稿

一,什么是网络编程?

所谓的网络编程就是,让在不同的电脑上的软件能够进行数据传递,即进程之间的通信

二,TCP/IP协议简介

为了把全世界的所有不同类型的计算机都连接起来,就必须规定一套全球通用的协议,为了实现互联网这个目标,互联网协议簇(InternetProtocolSuite)就是通用协议标准。因为互联网协议包含了上百种协议标准,但是最重要的两个协议是TCP和IP协议,所以,大家把互联网的协议简称TCP/IP协议。

TCP/IP根据网络功能将网络分为了四层:链路层,网络层,传输层,应用层。有什么用途呢,是为了规范网络数据传输。

三,端口

假如左边的陌陌要和右边的陌陌通信,是怎么实现的呢,首先左边的陌陌通过ip地址找到右边对应的一台电脑,但是电脑上有很多进程,那怎么确定就要发给陌陌这个进程呢,答案是通过端口号来找到陌陌这个进程的,因为每台电脑上的不同进程都会对应一个不同的端口号。就好像我要去朋友家里玩,首先我知道他的家在哪里。到了他家里的时候,有很多房间,有他妈妈的,弟弟的,所以我们要找到他自己的房间。这是的房间对应端口号,家里的地址对应电脑的ip地址。

问题又来了,既然端口号是为了区分不同的进程的,那为什么不用pid呢?每台电脑的不同进程也对应不同的pid啊?这是因为pid是不固定的,端口号是固定的,在一台的电脑上对应某个进程的pid是3520,在别的电脑上相同的进程的pid可能就是3529了,所以才要用端口号来重新区分进程用于不同电脑上的通信。

端口的分类:1.知名端口(0~1023) 2.动态端口(1024~65535)

知名端口如:80端口用于http服务,21端口用于ftp服务。

动态端口是用户可以自己分配的。

如何查看自己的端口:netstat -an

四,ip地址

用逻辑值来标记一台电脑,如用192.168.1.100来标记这一台电脑。这个逻辑值就是ip地址。

相关TAG标签
上一篇:真集群与伪集群的区别
下一篇:MongoDB数据库文档CRUD操作教程
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站