Bài giảng Lập trình mạng nâng cao - Chương 3: IP Multicasting
Thông tin tài liệu:
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình mạng nâng cao - Chương 3: IP Multicasting LẬP TRÌNH MẠNG NÂNG CAO Chương 3. IP MULTICASTINGNguyễn Vũ – IT Faculty, Viet Han Friendship 1 Kỹ thuật IP Multicasting BroadCasting là gì? Dùng để gửi một gói tin đến tất cả các nút trong mạng Để thực hiện hình thức quảng bá, địa chỉ đến của gói tin sẽ là địa chỉ quảng bá. Có hai loại là: Local BroadCast Global BroadCast Ví dụ: Cho mạng lớp B có địa chỉ IP là 192.168.0.0 có SubNet Mask là 255.255.0.0, địa chỉ Local Broadcast là: 192.168.254.255 Nguyễn Vũ – IT Faculty, Viet Han Friendship 2 Kỹ thuật IP Multicasting Theo mặc định, Socket không được phép gửi tin nhắn quảng bá: Gửi gói dữ liệu BroadCast:class BadBroadcast { public static void Main() { Socket sock = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp); IPEndPoint iep = new IPEndPoint(IPAddress.Broadcast, 9050); byte[] data = Encoding.ASCII.GetBytes(This is a test message); sock.SendTo(data, iep); sock.Close(); }} Nguyễn Vũ – IT Faculty, Viet Han Friendship 3 Kỹ thuật IP MulticastingDùng kỹ thuật BroadCasting để gửi dữ liệu đến nhiềumáy trong mạng cục bộĐối với một ứng dụng C # để gửi các gói dữ liệuBroadcast, ta dùng phương thức SetSocketOption() củalớp Socket :Socket sock = new Socket(AddressFamily.InterNetwork,SocketType.Dgram, ProtocolType.Udp);sock.SetSocketOption(SocketOptionLevel.Socket,SocketOptionName.Broadcast, 1); Nguyễn Vũ – IT Faculty, Viet Han Friendship 4 Kỹ thuật IP MulticastingDùng kỹ thuật BroadCasting để gửi dữ liệu đến nhiều máy trongmạng cục bộ Gửi gói dữ liệu:class Broadcst { public static void Main() { Socket sock = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp); IPEndPoint iep1 = new IPEndPoint(IPAddress.Broadcast, 9050); IPEndPoint iep2 = new IPEndPoint(IPAddress.Parse(192.168.1.255), 9050); string hostname = Dns.GetHostName(); byte[] data = Encoding.ASCII.GetBytes(hostname); sock.SetSocketOption(SocketOptionLeyel.Socket, SocketOptionName.Broadcast, 1); sock.SendTo(data, iep1); sock.SendTo(data, iep2); sock.Close(); }} Nguyễn Vũ – IT Faculty, Viet Han Friendship 5 Kỹ thuật IP Multicasting Nhận gói dữ liệu:class RecvBroadcst { public static void Main() { Socket sock = new Socket(AddressFamily.InterNetwork,SocketType.Dgram, ProtocolType.Udp); IPEndPoint iep = new IPEndPoint(IPAddress.Any, 9050); sock.Bind(iep); EndPoint ep = (EndPoint)iep; Console.WriteLine(Ready to receiye…); byte[] data = new byte[1024]; int recv = sock.ReceiveFrom(data, ref ep); string stringData = Encoding.ASCII.GetString(data, 0, recv); Console.WriteLine(received: {0} from: {1}, stringData, ep.ToString()); data = new byte[1024]; recv = sock.ReceiveFrom(data, ref ep); stringData = Encoding.ASCII.GetString(data, 0, recv); Console.WriteLine(received: {0} from: {1},stringData, ep.ToString()); sock.Close(); }} Nguyễn Vũ – IT Faculty, Viet Han Friendship 6 Kỹ thuật IP Multicasting Sử dụng Broadcast Packet để thông báo có sự hiện diện của Serverclass Advertise { public static void Main() { Advertise server = new Advertise(); } public Advertise() { Thread advert = new Thread(new ThreadStart(sendPackets)); advert.IsBackground = true; advert.Start(); Console.Write(Press Enter to stop); string data = Console.ReadLine(); } Nguyễn Vũ – IT Faculty, Viet Han Friendship 7 Kỹ thuật IP Multicasting Sử dụng Broadcast Packet để thông báo có sự hiện diện của Servervoid sendPackets(){ Socket sock = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp); sock.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Broadcast, 1); IPEndPoint iep = new IPEndPoint(IPAddress.Broadcast, 9050); string hostname = Dns.GetHostName(); byte[] data = Encoding.ASCII.GetBytes(hostname); while (true) { sock.SendTo(data, iep); Thread.Sleep(6000); }} Nguyễn Vũ – IT Faculty, Viet Han Friendship 8 Kỹ thuật IP Multicasting Multicasting là gì? Một địa chỉ Multicasting cho phép thiết bị gửi dữ liệu tới một tập xác định trước các host, được biết đến như các nhóm Multicast, trong các mạng con khác nhau. Range Assignment 224.0.0.0–224.0.0.255 Localnetworkcontrolblock 224.0.1.0–224.0.1.255 Internetworkcontrolblock 224.0.2.0–224.0.255.0 ADHOCblock 224.1.0.0–224.1.255.255 STmulticastgroups 224.2.0.0–224.2. ...
Tìm kiếm theo từ khóa liên quan:
Kỹ thuật IP Multicasting Lập trình mạng nâng cao Bài giảng Lập trình mạng nâng cao Socket Multicasting trong .Net Chương 3 IP Multicasting Lập trình mạngTài liệu liên quan:
-
Đề cương chi tiết học phần: Mạng máy tính và lập trình mạng
4 trang 160 0 0 -
Báo cáo bài tập lớn môn Mạng máy tính và Lập trình mạng: Tìm hiểu về Soap
32 trang 136 0 0 -
349 trang 123 0 0
-
Bài giảng Lập trình mạng - Chương 1: Giới thiệu Lập trình mạng
18 trang 108 0 0 -
Báo cáo chuyên đề: Lập trình mạng nâng cao
24 trang 81 0 0 -
Giáo trình Lập trình mạng: Phần 1 - Trường Đại học Phan Thiết
78 trang 75 0 0 -
Giáo trình Lập trình mạng: Phần 1
54 trang 62 0 0 -
Giáo trình Lập trình mạng - ThS. Văn Thiên Hoàng
201 trang 56 0 0 -
17 trang 47 0 0
-
Tài liệu hệ thống phát hiện xâm nhập
14 trang 34 0 0 -
Bài giảng Lập trình mạng: Phần 1
75 trang 33 0 0 -
Bài giảng Lập trình mạng nâng cao ICMP protocol - Nguyễn Vũ
29 trang 29 0 0 -
Bài giảng Lập trình mạng: Chương 1 - Trương Đình Huy
14 trang 26 0 0 -
Chương 5 LẬP TRÌNH MẠNG VỚI Java
32 trang 26 0 0 -
Bài giảng Lập trình mạng: Chương 1 - Lê Bá Vui
53 trang 26 0 0 -
Lecture Network programming: Socket API introduction
25 trang 26 0 0 -
Bài giảng Lập trình mạng: Chương 5 - Lê Bá Vui
51 trang 25 0 0 -
Bài giảng Lập trình mạng: Chương 1 - Lương Ánh Hoàng
17 trang 25 0 0 -
Bài giảng Lập trình mạng: Chương 7 - Phạm Trần Vũ
63 trang 25 0 0 -
12 trang 25 0 0