惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

罗磊的独立博客
Cisco Talos Blog
Cisco Talos Blog
C
Check Point Blog
博客园_首页
Recent Commits to openclaw:main
Recent Commits to openclaw:main
Martin Fowler
Martin Fowler
Recorded Future
Recorded Future
S
Security @ Cisco Blogs
L
LINUX DO - 最新话题
博客园 - 司徒正美
P
Privacy International News Feed
G
Google Developers Blog
I
Intezer
Hacker News - Newest:
Hacker News - Newest: "LLM"
博客园 - 聂微东
The GitHub Blog
The GitHub Blog
C
Cybersecurity and Infrastructure Security Agency CISA
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Scott Helme
Scott Helme
K
Kaspersky official blog
I
InfoQ
Y
Y Combinator Blog
T
The Blog of Author Tim Ferriss
Webroot Blog
Webroot Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
大猫的无限游戏
大猫的无限游戏
D
Docker
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
W
WeLiveSecurity
Microsoft Azure Blog
Microsoft Azure Blog
Spread Privacy
Spread Privacy
量子位
H
Hacker News: Front Page
Simon Willison's Weblog
Simon Willison's Weblog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
SecWiki News
SecWiki News
S
Security Affairs
Latest news
Latest news
人人都是产品经理
人人都是产品经理
C
CERT Recently Published Vulnerability Notes
S
Security Archives - TechRepublic
V
Visual Studio Blog
T
Troy Hunt's Blog
S
Secure Thoughts
F
Fortinet All Blogs
V
V2EX
The Register - Security
The Register - Security
J
Java Code Geeks
MongoDB | Blog
MongoDB | Blog
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO

博客园 - Adam.Zhao

简单示例理解神闭包 ejs 模板使用方法 我使用的开源组件汇总,以备学习使用 Windows7下Java运行时环境搭建 了不起的Node.js--之四 了不起的Node.js--之三 了不起的Node.js--之二 了不起的Node.js--之一 请大家有需要购物的到我的网站上吧。 AngularJS应用骨架 最近在研究google的angularjs 好久没有来写博客了 c#二进制文件数据转换base64字符串文本代码 ActionFilterAttribute做切面编程的Url的格式化例子 学习content-type 网站性能优化之服务端(一) 艺龙旅行网招聘了 关于项目管理的几点建议 HP CQ35 Windows7声卡驱动安装不上问题
了不起的Node.js--之五 TCP连接
Adam.Zhao · 2014-04-29 · via 博客园 - Adam.Zhao

TCP连接

传输控制协议(TCP)是一个面向连接的协议,它保证了两台计算机之间数据传输的可靠性和顺序。

TCP是一种传输层协议,它可以让你将数据从一台计算机完整有序地传输到另一台计算机。

Node.js这个框架的出发点就是为了网络应用开发所设计的。如今,网络应用都是用TCP/IP协议进行通信的。

Node Http服务器是构建于Node TCP服务器之上的。从编程角度来说,也就是Node中得http.Server继承自net.Server(net是TCP模块)。

TCP有哪些特性

TCP的首要特性就是它是面向连接的,面向连接的通信和保证顺序的传递。

还有面向字节、可靠性、流控制、拥堵控制、Telnet等特性。

Telnet详解

Telnet是一个早期的网络协议,旨在提供双向的虚拟终端。在SSH出现前,它作为一种控制远程计算机的方式被广泛使用,如远程服务器管理。它是TCP协议上层的协议。

$ telnet

绝大部分Telnet使用的是23端口。

下面我们一起看一个telnet的例子:下载

# web-server.js
var http=require('http');
var serv=http.createServer(function (req, res){
    res.writeHead(200, {'Content-Type': 'text/html'});
    res.end('<marquee>Smashing Node!</marquee>');
    });
serv.listen(3000);

使用telnet来建立一个连接

$ telnet localhost 3000

服务器端的'<marquee>Smashing Node!</marquee>'信息并未到客户端这里。原因在于,要往TCP连接中写数据,必须首先创建一个HTTP请求,这就是套接字(socket)。

在终端输入GET/HTTP/1.1然后按两下回车键。

我们来总结一下:

1.成功建立了一个TCP连接。

2.创建了一个HTTP请求。

3.接收到了一个HTTP响应。

4.测试了一些TCP的特性。到达的数据和在Node.js中写得一样:先写了Content-Type响应头,然后是响应体,最后所有的信息都按序到达。