Lập trình mạng trong NET FRAMEWORK - Chương 2
Số trang: 46
Loại file: pdf
Dung lượng: 723.62 KB
Lượt xem: 8
Lượt tải: 0
Xem trước 5 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Tài liệu tham khảo giáo trình Lập trình mạng trong NET FRAMEWORK - Chương 2 Lập trình mạng trong NET FRAMEWORk dành cho sinh viên khoa công nghệ thông tin
Nội dung trích xuất từ tài liệu:
Lập trình mạng trong NET FRAMEWORK - Chương 2 CHƯƠNG 2: L P TRÌNH M NG TRONG .NET FRAMEWORK2.1. Socket hư ng k t n i (TCP Socket)Socket là m t giao di n l p trình ng d ng (API) m ngThông qua giao di n này chúng ta có th l p trình ñi u khi n vi c truy n thông gi ahai máy s d ng các giao th c m c th p là TCP, UDP…Socket là s tr u tư ng hoá m c cao, có th tư ng tư ng nó như là thi t b truy nthông hai chi u g i – nh n d li u gi a hai máy tính v i nhau. Các lo i Socket Socket hư ng k t n i (TCP Socket) Socket không hư ng k t n i (UDP Socket) Raw Socket ð c ñi m c a Socket hư ng k t n i Có 1 ñư ng k t n i o gi a 2 ti n trình M t trong 2 ti n trình ph i ñ i ti n trình kia yêu c u k t n i. Có th s d ng ñ liên l c theo mô hình Client/Server Trong mô hình Client/Server thì Server l ng nghe và ch p nh n m t yêu c uk tn i M i thông ñi p g i ñ u có xác nh n tr v Các gói tin chuy n ñi tu n t ð c ñi m c a Socket không hư ng k t n i Hai ti n trình liên l c v i nhau không k t n i tr c ti p Thông ñi p g i ñi ph i kèm theo ñ a ch c a ngư i nh n Thông ñi p có th g i nhi u l n Ngư i g i không ch c ch n thông ñi p t i tay ngư i nh n Thông ñi p g i sau có th ñ n ñích trư c thông ñi p g i trư c ñó. S hi u c ng c a Socket 9 ð có th th c hi n các cu c giao ti p, m t trong hai quá trình ph i công b s hi u c ng c a socket mà mình s d ng. M i c ng giao ti p th hi n m t ñ a ch xác ñ nh trong h th ng. Khi quá trình ñư c gán m t s hi u c ng, nó có th nh n d li u g i ñ n c ng này t các quá trình khác. Quá trình còn l i cũng yêu c u t o ra m t socket.2.1.1. Gi i thi u v NameSpace System.Net và System.Net.Sockets Cung c p m t giao di n l p trình ñơn gi n cho r t nhi u các giao th c m ng. Có r t nhi u l p ñ l p trình Ta quan tâm l p IPAdress, IPEndPoint, DNS, … L p IPAdress M t s Field c n chú ý: Any: Cung c p m t ñ a ch IP ñ ch ra r ng Server ph i l ng nghe trên t t c các Card m ng Broadcast: Cung c p m t ñ a ch IP qu ng bá Loopback: Tr v m t ñ a ch IP l p AdressFamily: Tr v h ñ a ch c a IP hi n hành L p IPAddress M t s phương th c c n chú ý: Phương th c kh i t o IPAddress(Byte[]) IPAddress(Int64) IsLoopback: Cho bi t ñ a ch có ph i ñ a ch l p không Parse: Chuy n IP d ng xâu v IP chu n ToString: Tr ñ a ch IP v d ng xâu TryParse: Ki m tra IP d ng xâu có h p l không? L p IPEndPoint M t s phương th c c n chú ý: Phương th c kh i t o IPEndPoint (Int64, Int32) IPEndPoint (IPAddress, Int32) Create: T o m t EndPoint t m t ñ a ch Socket ToString : Tr v ñ a ch IP và s hi u c ng theo khuôn d ng ð aCh : C ng, ví d : 192.168.1.1:8080 L p DNS M t s thành ph n c a l p: HostName: Cho bi t tên c a máy ñư c phân gi i GetHostAddress: Tr v t t c IP c a m t tr m GetHostEntry: Gi i ñáp tên ho c ñ a ch truy n vào và tr v ñ i tư ng IPHostEntry 10 GetHostName: L y v tên c a máy tính c c b NameSpace System.Net.Sockets M t s l p hay dùng: TcpClient, UdpClient, TcpListener, Socket, NetworkStream, … ð t o ra Socket Socket(AddressFamily af, SocketType st, ProtocolType pt) SocketType Protocoltype Description Dgram Udp Connectionless communication Stream Tcp Connection-oriented communication Raw Icmp Internet Control Message Protocol Raw Raw Plain IP packet communicationusing System.Net;using System.Net.Sockets; class SockProp { public static void Main() { IPAddress ia = IPAddress.Parse(127.0.0.1); IPEndPoint ie = new IPEndPoint(ia, 8000); Socket test = new Socket(AddressFamily.InterNetwork, SocketType.Stream,ProtocolType.Tcp); Console.WriteLine(AddressFamily: {0}, test.AddressFamily); Console.WriteLine(SocketType: {0}, test.SocketType); Console.WriteLine(ProtocolType: {0}, test.ProtocolType); Console.WriteLine(Blocking: {0}, test.Blocking); test.Blocking = false; Console.WriteLine(new Blocking: {0}, test.Blocking); Console.WriteLine(Connected: {0}, test.Connected); test.Bind(ie); IPEndPoint iep = (IPEndPoint)test.LocalEndPoint; Console.WriteLine(Local EndPoint: {0}, iep.ToString()); test.Close(); Console.ReadKey(); } }2.1.2. Vi t chương trình cho phía máy ch Vi t chương trình cho phía máy ch T o m t Socket Liên k t v i m t IPEndPoint c c b L ng nghe k t n i Ch p nh n k t n i G i nh n d li u theo giao th c ñã thi t k 11 ðóng k t n i sau khi ñã hoàn thành và tr l i tr ng thái l ng nghe ch k tn im i Vi t chương trình cho phía máy ch IPEndPoint ipep = new IPEndPoint(IPAddress.Any, 9050); Socket newsock = Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tc ...
Nội dung trích xuất từ tài liệu:
Lập trình mạng trong NET FRAMEWORK - Chương 2 CHƯƠNG 2: L P TRÌNH M NG TRONG .NET FRAMEWORK2.1. Socket hư ng k t n i (TCP Socket)Socket là m t giao di n l p trình ng d ng (API) m ngThông qua giao di n này chúng ta có th l p trình ñi u khi n vi c truy n thông gi ahai máy s d ng các giao th c m c th p là TCP, UDP…Socket là s tr u tư ng hoá m c cao, có th tư ng tư ng nó như là thi t b truy nthông hai chi u g i – nh n d li u gi a hai máy tính v i nhau. Các lo i Socket Socket hư ng k t n i (TCP Socket) Socket không hư ng k t n i (UDP Socket) Raw Socket ð c ñi m c a Socket hư ng k t n i Có 1 ñư ng k t n i o gi a 2 ti n trình M t trong 2 ti n trình ph i ñ i ti n trình kia yêu c u k t n i. Có th s d ng ñ liên l c theo mô hình Client/Server Trong mô hình Client/Server thì Server l ng nghe và ch p nh n m t yêu c uk tn i M i thông ñi p g i ñ u có xác nh n tr v Các gói tin chuy n ñi tu n t ð c ñi m c a Socket không hư ng k t n i Hai ti n trình liên l c v i nhau không k t n i tr c ti p Thông ñi p g i ñi ph i kèm theo ñ a ch c a ngư i nh n Thông ñi p có th g i nhi u l n Ngư i g i không ch c ch n thông ñi p t i tay ngư i nh n Thông ñi p g i sau có th ñ n ñích trư c thông ñi p g i trư c ñó. S hi u c ng c a Socket 9 ð có th th c hi n các cu c giao ti p, m t trong hai quá trình ph i công b s hi u c ng c a socket mà mình s d ng. M i c ng giao ti p th hi n m t ñ a ch xác ñ nh trong h th ng. Khi quá trình ñư c gán m t s hi u c ng, nó có th nh n d li u g i ñ n c ng này t các quá trình khác. Quá trình còn l i cũng yêu c u t o ra m t socket.2.1.1. Gi i thi u v NameSpace System.Net và System.Net.Sockets Cung c p m t giao di n l p trình ñơn gi n cho r t nhi u các giao th c m ng. Có r t nhi u l p ñ l p trình Ta quan tâm l p IPAdress, IPEndPoint, DNS, … L p IPAdress M t s Field c n chú ý: Any: Cung c p m t ñ a ch IP ñ ch ra r ng Server ph i l ng nghe trên t t c các Card m ng Broadcast: Cung c p m t ñ a ch IP qu ng bá Loopback: Tr v m t ñ a ch IP l p AdressFamily: Tr v h ñ a ch c a IP hi n hành L p IPAddress M t s phương th c c n chú ý: Phương th c kh i t o IPAddress(Byte[]) IPAddress(Int64) IsLoopback: Cho bi t ñ a ch có ph i ñ a ch l p không Parse: Chuy n IP d ng xâu v IP chu n ToString: Tr ñ a ch IP v d ng xâu TryParse: Ki m tra IP d ng xâu có h p l không? L p IPEndPoint M t s phương th c c n chú ý: Phương th c kh i t o IPEndPoint (Int64, Int32) IPEndPoint (IPAddress, Int32) Create: T o m t EndPoint t m t ñ a ch Socket ToString : Tr v ñ a ch IP và s hi u c ng theo khuôn d ng ð aCh : C ng, ví d : 192.168.1.1:8080 L p DNS M t s thành ph n c a l p: HostName: Cho bi t tên c a máy ñư c phân gi i GetHostAddress: Tr v t t c IP c a m t tr m GetHostEntry: Gi i ñáp tên ho c ñ a ch truy n vào và tr v ñ i tư ng IPHostEntry 10 GetHostName: L y v tên c a máy tính c c b NameSpace System.Net.Sockets M t s l p hay dùng: TcpClient, UdpClient, TcpListener, Socket, NetworkStream, … ð t o ra Socket Socket(AddressFamily af, SocketType st, ProtocolType pt) SocketType Protocoltype Description Dgram Udp Connectionless communication Stream Tcp Connection-oriented communication Raw Icmp Internet Control Message Protocol Raw Raw Plain IP packet communicationusing System.Net;using System.Net.Sockets; class SockProp { public static void Main() { IPAddress ia = IPAddress.Parse(127.0.0.1); IPEndPoint ie = new IPEndPoint(ia, 8000); Socket test = new Socket(AddressFamily.InterNetwork, SocketType.Stream,ProtocolType.Tcp); Console.WriteLine(AddressFamily: {0}, test.AddressFamily); Console.WriteLine(SocketType: {0}, test.SocketType); Console.WriteLine(ProtocolType: {0}, test.ProtocolType); Console.WriteLine(Blocking: {0}, test.Blocking); test.Blocking = false; Console.WriteLine(new Blocking: {0}, test.Blocking); Console.WriteLine(Connected: {0}, test.Connected); test.Bind(ie); IPEndPoint iep = (IPEndPoint)test.LocalEndPoint; Console.WriteLine(Local EndPoint: {0}, iep.ToString()); test.Close(); Console.ReadKey(); } }2.1.2. Vi t chương trình cho phía máy ch Vi t chương trình cho phía máy ch T o m t Socket Liên k t v i m t IPEndPoint c c b L ng nghe k t n i Ch p nh n k t n i G i nh n d li u theo giao th c ñã thi t k 11 ðóng k t n i sau khi ñã hoàn thành và tr l i tr ng thái l ng nghe ch k tn im i Vi t chương trình cho phía máy ch IPEndPoint ipep = new IPEndPoint(IPAddress.Any, 9050); Socket newsock = Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tc ...
Tìm kiếm theo từ khóa liên quan:
mạng máy tính NET FRAMEWORk ứng dụng mạng xây dựng ứng dụng ứng dụng nhiều lớpGợi ý tài liệu liên quan:
-
Giáo án Tin học lớp 9 (Trọn bộ cả năm)
149 trang 246 0 0 -
Ngân hàng câu hỏi trắc nghiệm môn mạng máy tính
99 trang 235 1 0 -
47 trang 234 3 0
-
Đề cương chi tiết học phần Thiết kế và cài đặt mạng
3 trang 228 0 0 -
Giáo trình Hệ thống mạng máy tính CCNA (Tập 4): Phần 2
102 trang 227 0 0 -
Giáo trình Hệ thống mạng máy tính CCNA (Tập 4): Phần 1
122 trang 196 0 0 -
80 trang 195 0 0
-
122 trang 191 0 0
-
Giáo trình môn học/mô đun: Mạng máy tính (Ngành/nghề: Quản trị mạng máy tính) - Phần 1
68 trang 182 0 0 -
Giáo trình căn bản về mạng máy tính -Lê Đình Danh 2
23 trang 170 0 0