了不得的Node.js--之五 TCP鏈接

TCP鏈接html

傳輸控制協議(TCP)是一個面向鏈接的協議,它保證了兩臺計算機之間數據傳輸的可靠性和順序。web

TCP是一種傳輸層協議,它能夠讓你將數據從一臺計算機完整有序地傳輸到另外一臺計算機。編程

Node.js這個框架的出發點就是爲了網絡應用開發所設計的。現在,網絡應用都是用TCP/IP協議進行通訊的。服務器

Node Http服務器是構建於Node TCP服務器之上的。從編程角度來講,也就是Node中得http.Server繼承自net.Server(net是TCP模塊)。網絡

TCP有哪些特性框架

TCP的首要特性就是它是面向鏈接的,面向鏈接的通訊和保證順序的傳遞。socket

還有面向字節、可靠性、流控制、擁堵控制、Telnet等特性。測試

Telnet詳解ui

Telnet是一個早期的網絡協議,旨在提供雙向的虛擬終端。在SSH出現前,它做爲一種控制遠程計算機的方式被普遍使用,如遠程服務器管理。它是TCP協議上層的協議。spa

$ 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響應頭,而後是響應體,最後全部的信息都按序到達。

相關文章
相關標籤/搜索