你不得不知的网络编程三剑客
一、协议
- 协议: 计算机网络通信必须遵守的规则。
详情见:https://blog.csdn.net/qq_33591873/article/details/107937323
二、IP地址
- IP地址:指互联网协议地址(Internet Protocol Address),俗称IP。IP地址用来给一个网络中的计算机设备做唯一的编号。假如我们把“个人电脑”比作“一台电话”的话,那么“IP地址”就相当于“电话号码”。
IP地址分类
IPv4:是一个32位的二进制数,通常被分为4个字节,表示成
a.b.c.d
的形式,例如192.168.65.100
。其中a、b、c、d都是0~255之间的十进制整数,那么最多可以表示42亿个。IPv6:由于互联网的蓬勃发展,IP地址的需求量愈来愈大,但是网络地址资源有限,使得IP的分配越发紧张。
为了扩大地址空间,拟通过IPv6重新定义地址空间,采用128位地址长度,每16个字节一组,分成8组十六进制数,表示成
ABCD:EF01:2345:6789:ABCD:EF01:2345:6789
,号称可以为全世界的每一粒沙子编上一个网址,这样就解决了网络地址资源数量不够的问题。
常用命令
- 查看本机IP地址,在控制台输入:
ipconfig
- 检查网络是否连通,在控制台输入:
ping 空格 IP地址
ping 220.181.57.216
特殊的IP地址
- 本机IP地址:
127.0.0.1
、localhost
。
三、端口号
网络的通信,本质上是两个进程(应用程序)的通信。每台计算机都有很多的进程,那么在网络通信时,如何区分这些进程呢?
如果说IP地址可以唯一标识网络中的设备,那么端口号就可以唯一标识设备中的进程(应用程序)了。
- 端口号:用两个字节表示的整数,它的取值范围是0~65535 。其中,0~1023之间的端口号用于一些知名的网络服务和应用,普通的应用程序需要使用1024以上的端口号。如果端口号被另外一个服务或应用所占用,会导致当前程序启动失败。
利用协议
+IP地址
+端口号
三元组合,就可以标识网络中的进程了,那么进程间的通信就可以利用这个标识与其它进程进行交互。
你不得不知的网络编程三剑客相关推荐
- iOS开发之网络编程--使用NSURLConnection实现大文件断点续传下载
前言:iOS开发之网络编程--使用NSURLConnection实现大文件断点续传下载是在前篇iOS开发之网络编程--使用NSURLConnection实现大文件下载的基础上进行 断点续传的设置 ...
- 完毕port(CompletionPort)具体解释 - 手把手教你玩转网络编程系列之三
手把手叫你玩转网络编程系列之三 完毕port(Completion Port)具体解释 ...
- 网络编程学习方法和图书推荐
从事网络编程有五年多了,写过自己的Server,读过大部分网络库libevent,redis, muduo等等,市面上的网络用书大多读过,给新人一些建议,主要是从事服务器网络编程后端的同学. 如果你没 ...
- python 网络编程 问题记录
191223 python 网络编程 套接字的初使用 在本机配置服务端和客户端后,运行没问题:将服务端代码弄到另一台电脑上后启动,用原来的电脑去连接它,就连不上了,不知啥原因,是ip自动获取和指定ip ...
- (转载)网络编程释疑之:同步,异步,阻塞,非阻塞
一讲到网络编程的I/O模型,总会涉及到这几个概念.问了很多人,没几个能清晰地讲出他们之间的区别联系,甚至在网络上也有很多不同的观点,也不知是中国文字释义的博大精深,还是本来这几个概念就是绕人不倦.今天 ...
- 网络编程释疑之:TCP的TIME_WAIT状态在服务器开发中的影响?
在进行TCP高并发服务器开发时,有些规则仿佛是约定俗成的,很多朋友会依据这些规则去做,比如高并发TCP服务器中进行主动关闭的一方最好是客户端.服务器端程序最好启用SO_REUSEADDR选项,但是很多 ...
- 网络编程释疑之:同步,异步,阻塞,非阻塞
一讲到网络编程的I/O模型,总会涉及到这几个概念.问了很多人,没几个能清晰地讲出他们之间的区别联系,甚至在网络上也有很多不同的观点,也不知是中国文字释义的博大精深,还是本来这几个概念就是绕人不倦.今天 ...
- Linux网络编程“惊群”问题总结
http://www.cnblogs.com/Anker/p/7071849.html 1.前言 我从事Linux系统下网络开发将近4年了,经常还是遇到一些问题,只是知其然而不知其所以然,有时候和其他 ...
- ACE网络编程思考(二)
2019独角兽企业重金招聘Python工程师标准>>> 3. ACE 代码质量不高,更像是一个研究项目,而不是工业界的产品 读 ACE 现在的代码,一股学生气扑面而来,感觉像在读实习 ...
- 完成端口(CompletionPort)详解 - 手把手教你玩转网络编程系列之三 1-转
完成端口(Completion Port)详解 本系列里完成端口的代码在两年前就已经写好了,但是由于许久没有写东西了,不知该如何提笔,所以这篇文档总是在酝酿之中--酝酿了两年之后,终于决定开始动笔了, ...
最新文章
- 在IIS中配置MIME类型组建Wap网站
- windows10中远程访问凭据不工作
- 聊聊区块链,虽然我不挖矿!
- python 偏函数装饰器
- sqlServer 获取最新的一条数据
- intellij idea elixir 插件
- jQuery阻止表单提交
- Java 延时常见的几种方法
- java sql语句中文乱码_PL/SQL执行语句中文乱码
- STM32芯片包下载教程
- 看图和步骤教你把dwg转换成pdf格式
- ubuntu firefox flash 插件安装
- 网络安全——计算机网络拓扑图
- C++核心准则R.3: 原始指针(T*)不应拥有所有权
- Shinobi视频监控平台
- 解决问题:Matlab如何生成或保存无背景图片
- 单向和双向沟通带来启发
- Web设计网站软件推荐
- 实例1QQ好友列表界面和九宫格
- net::ERR_CONNECTION_TIMED_OUT 网络连接超时
热门文章
- 山东省第二届数据应用创新大赛日照赛区-公积金贷款逾期预测-赛后总结
- openwrt修改默认网关地址_非常详细的锐捷网关路由配置教程,适合新手小白
- 在PyG上构建自己的数据集
- 微信自研生产级 Paxos 类库 PhxPaxos 实现原理介绍
- 解决ImportError: cannot import name ‘bbox_overlaps_cython‘
- 打开WORD文档出错提示
- android 闪屏页 动画,记一次 Android 闪屏页适配
- python 0基础学习笔记6:OS模块、窗口控制、语言、内存修改
- mysql 索引选择原则 07
- CSO246未能找到类型或命名空间名“System“(是否缺少using指令或程序集引用?)