Danh mục

Bài giảng Lập trình mạng nâng cao - Chương 3: IP Multicasting

Số trang: 21      Loại file: ppt      Dung lượng: 713.50 KB      Lượt xem: 16      Lượt tải: 0    
10.10.2023

Hỗ trợ phí lưu trữ khi tải xuống: 18,000 VND Tải xuống file đầy đủ (21 trang) 0
Xem trước 3 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Nội dung "Bài giảng Lập trình mạng nâng cao - Chương 3: IP Multicasting" trình bày những nội dung về kỹ thuật IP Multicasting, Socket Multicasting trong .Net và một số bài tập. Mời các bạn tham khảo.
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 MulticastingDù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 MulticastingDù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ài liệu được xem nhiều:

Tài liệu liên quan: