Vùng( domain)

Một phần của tài liệu ứng dụng bắt gói tin cho mạng quản trị (Trang 40)

Vùng dùng xác 8鵜nh j衣 t亥ng o衣ng n挨i giao ti院p e栄a Socket di宇n ra. Vùng giao ti院p Socket thông f映ng nh医t hi羽n nay là AF_INET hay gia ti院p socket theo chu育no衣ng Internet. Chu育n này s穎 d映ng 8鵜a ch雨 IP 8吋 xác 8鵜nh nút k院t n嘘i v壱t lý trên o衣ng. Ngoài ra, n院ud衣n ch雨 c亥n giao ti院pe映c b瓜, d衣n có th吋 dùng vùng giao ti院p theo chu育n e栄a Sun AF_UNIX, 8ó là dùng 8逢運ng d磯n và h羽 th嘘ng file 8吋 8員t tên và xác 8鵜nh k院t n嘘i gi英a hai hay nhi隠u 泳ng f映ng. Ch鰯ng j衣n nh逢 ví d映 trên, chúng ta 8ã th詠c hi羽n b茨ng cách 8員t tên cho socket là server_socket, và Linux 8ã t衣o ra file server_socket ngay trên th逢 o映c hi羽n hành (hay trong th逢 o映cv衣m /tmp tùy theo phiên d違n e栄a Linux và UNIX). Tuy nhiên vùng giao ti院p AF_UNIX l衣i ít 8逢嬰c s穎 d映ng trong th詠c t院. Ngày nay h亥u h院t các

泳ngf映ngo衣ng s穎 d映ng socket8隠u theo vùng AF_INET là ch栄y院u. Chúng tau胤 bàn sâu v隠phân vùng này ngay sau 8ây.

Vùng AF_INET nh逢" 8ã nêu s穎 d映ng 8鵜c ch雨 IP (Internet Protocol) là m瓜t ch栄 ngh a s嘘 32 bits8吋 xác 8鵜nh k院t n嘘i v壱t lý. S嘘

Ch逢挨ng 4: L壱p trình socket

hay 127.0.0.1 là các 8鵜a ch雨 IP h嬰p l羽. A鵜a ch雨IP có th吋 8逢嬰c ánh z衣

thành m瓜t tên d宇 nh噂 j挨n nh逢 www.yahoo.com hay www.microsoft.com, chúng 8逢嬰c i丑i là tên vùng (domain name). Vi羽c ánh z衣 8鵜a ch雨 IP thành tên vùng th逢運ng do máy ch栄 DNS (Domain Name Server) th詠c hi羽n. Tuy nhiên, d衣n e ng có th吋 t詠

ánhz衣tên vùng ngay trên mày e映c b瓜b茨ng cách s穎 d映ng t壱p tin d英

li羽u /etc/hosts.

Socket theo dòng giao th泳c IP s穎 d映ng port (s嘘 hi羽u c鰻ng) 8吋 8員t tên cho m瓜t socket. C鰻ng dùng 8吋 phân bi羽t d英 li羽u g穎i 8院nu胤

chuy吋n cho 泳ng f映ng nào. D衣n hình dung n院u 8鵜a ch雨 IP dùng 8吋

xác 8鵜nh 8逢嬰c máy hay n挨i k院t n嘘i v壱t lý 8吋 8逢a d英 li羽u 8院n thì c鰻ng là 8鵜a ch雨 ph映 dùng 8吋g穎i chính xác d英li羽u8院n n挨i 泳ngf映ng c亥n. Ai隠u này do trên m瓜t máy có th吋 có nhi隠u泳ngf映ng cùng ch衣y và cùng s穎 d映ng trùng s嘘 c鰻ng. Do c鰻ng là m瓜t giá tr鵜 nguyên 2 bytes nân d衣n có th吋 s穎 d映ng kho違ng 65000 c鰻ng 8吋 t詠 do 8員t cho socket. Tr瑛 các s嘘 hi羽u c鰻ng n鰻 ti院ng nh逢 FTP, Web 8ã nêu荏 ph亥n trên d衣n không nên s穎 d映ng, còn thì b衣n có th吋 ch丑n s嘘 c鰻ng l噂n

j挨n 1024"8吋m荏cho sockete栄a泳ung f映ng.

M荏 socket theo AF_INET không khác m医y so v噂i AF_UNIX ngoài vi羽c 8員t tên và ch雨 8鵜nh s嘘hi羽u c鰻ng. Ví d映:

/* Mぞsocket theo kxt nぐi IP */

server_sockfd = socket (AF_INET, SOCK_STREAM, 0); server_address.sin_family = AF_INET;

server_address.sin_addr.s_addr = inet_addr(“127.0.0.1”); server_address.sin_port = 1234;

Ch逢挨ng 4: L壱p trình socket

Ngoài vùng giao ti院p AF_UNIX và AF_INET, d衣n còn có th吋

g員p AF_ISO dành cho chu育n giao th泳c o衣ng theo ISO hay AF_NS dành cho h羽 th嘘ng o衣ng Xerox, tuy nhiên chúng không 8逢嬰c s穎 f映ng th逢運ng xuyên, cho nên tau胤 không8隠c壱p 8院n chi ti院t.

Một phần của tài liệu ứng dụng bắt gói tin cho mạng quản trị (Trang 40)