Telecooperation Technische Universität Darmstadt Copyrighted material; for TUD student use only Telecooperation P4: Internet Praktikum Q&A Session Telecooperation.

Slides:



Advertisements
Similar presentations
UPnP Device Architecture. Networking is easy, except… Ad hoc networks don't have resources just for the sake of the network E.g., DHCP, DNS, directory,
Advertisements

Universal Plug and Play protocol (UPnP)
UPnP Technology 2009/03/31 Hsin-Han Yang, Cheng-Yi Chien, Po-Cheng Huang.
Certification Test Tool Jon Wheeler Test Lead Microsoft Corporation.
TU/e Service Discovery Mechanisms: two case studies / IC2002 Service Discovery Mechanisms: Two case studies Control point Device UPnP Terminal Domain Host.
Push Technology Humie Leung Annabelle Huo. Introduction Push technology is a set of technologies used to send information to a client without the client.
Interprocess Communication CH4. HW: Reading messages: User Agent (the user’s mail reading program) is either a client of the local file server or a client.
Computer Networks21-1 Chapter 21. Network Layer: Address Mapping, Error Reporting, and Multicasting 21.1 Address Mapping 21.2 ICMP 21.3 IGMP 21.4 ICMPv6.
Telecooperation/RBG Technische Universität Darmstadt Copyrighted material; for TUD student use only Introduction to Computer Science I Topic 16: Exception.
Internet Control Protocols Savera Tanwir. Internet Control Protocols ICMP ARP RARP DHCP.
CSCI 4550/8556 Computer Networks Comer, Chapter 23: An Error Reporting Mechanism (ICMP)
DHCP Dynamic Host Configuration Part 7 NVCC Professional Development TCP/IP.
Chapter 5 The Network Layer.
Chapter 13 Mobile IP. Outline  ADDRESSING  AGENTS  THREE PHASES  AGENT DISCOVERY  REGISTRATION  DATA TRANSFER  INEFFICIENCY IN MOBILE IP.
Universal Plug and Play (UPnP) Presented by: Kamal Kamal Kamal Kamal Mohammad Atieh Mohammad Atieh.
4: Network Layer4a-1 IP datagram format ver length 32 bits data (variable length, typically a TCP or UDP segment) 16-bit identifier Internet checksum time.
Internet Control Message Protocol ICMP. ICMP has two major purposes: –To report erroneous conditions –To diagnose network problems ICMP has two major.
Network Layer4-1 NAT: Network Address Translation local network (e.g., home network) /24 rest of.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 9 Internet Control Message.
Telecooperation Technische Universität Darmstadt Copyrighted material; for TUD student use only Internet Standards: Julian Schröder-Bernhardi, Dirk.
Universal Plug and Play Dirk Grunwald University of Colorado.
Chapter 1: Introduction to Web Applications. This chapter gives an overview of the Internet, and where the World Wide Web fits in. It then outlines the.
Universal Plug and Play (UPnP) and XML Shridhar Bhat
Doc.: IEEE /0961r0 Submission July 2012 Alex Ashley, NDS LtdSlide 1 Layer 2 Service Discovery Protocols Date: Authors:
Certification Test Tool Sarat Manni Test Lead Microsoft Corporation.
Chapter 4: Interprocess Communication‏ Pages
Application Layer 2-1 Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012.
The Inter-network is a big network of networks.. The five-layer networking model for the internet.
UPnP Introduction 教授 : 逄愛君 組員 : 資訊三 張弘霖 資訊四 陳錦翰 資訊四 蔡旻諧.
Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring CS4254 Computer Network Architecture and Programming Dr. Ayman A. Abdel-Hamid Computer.
Telecooperation Technische Universität Darmstadt Copyrighted material; for TUD student use only : Praktikum Internet – The Next Generation FG Telekooperation.
Voice-based generic UPnP Control Point Andreas BobekUniversity of Rostock Faculty of Computer Science and Electrical Engineering Andreas Bobek, Hendrik.
Introduction to Java Network Programming and HTTP
Transport Layer3-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside a router r 4.4 IP: Internet.
Presented by Rebecca Meinhold But How Does the Internet Work?
Service Discovery Protocols Mobile Computing - CNT Dr. Sumi Helal Professor Computer & Information Science & Engineering Department University.
S305 – Network Infrastructure Chapter 5 Network and Transport Layers.
UPnP AV Architecture - Generic Interface Design And Java Implementation Andreas BobekUniversity of Rostock Faculty of Computer Science and Electrical Engineering.
IP addresses IPv4 and IPv6. IP addresses (IP=Internet Protocol) Each computer connected to the Internet must have a unique IP address.
GENA (General Event Notification Architecture) RTLAB 이 남 지 2003/01/08.
Computer Communication: An example What happens when I click on
COMP2322 Lab 4 Socket Programming Toby Lam March 2, 2016.
COMPUTER NETWORKS Hwajung Lee. Image Source:
End-host IP: MAC: 11:11:11:11:11 gateway IP: MAC: 22:22:22:22:22 Google server IP: interne t interface DNS server IP:
1 Address Resolution Protocol (ARP). 2 Overview 3 Need for Address Translation Note: –The Internet is based on IP addresses –Local area networks use.
Preview of Universal Plug and Play RTLAB 배대호
Internet Control Message Protocol (ICMP)
COMP2322 Lab 4 Socket Programming
Internet Control Message Protocol (ICMP)
UPnP Device Architecture
Chapter 21 Address Mapping
Address Resolution Protocol (ARP)
ARP and RARP Objectives Chapter 7 Upon completion you will be able to:
Internet transport protocols services
Wireshark Lab#3.
Net 323: NETWORK Protocols
Internet Control Message Protocol (ICMP)
Internet Control Message Protocol (ICMP)
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Network Connected Devices
Internet Control Message Protocol (ICMP)
Internet Control Message Protocol Version 4 (ICMPv4)
Multimedia and Networks
Implementation and validation of UPnP in a home networking environment
Address Resolution Protocol (ARP)
Transport Protocols An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Universal Plug and Play protocol (UPnP)
Chapter 24 Mobile IP.
32 bit destination IP address
Presentation transcript:

Telecooperation Technische Universität Darmstadt Copyrighted material; for TUD student use only Telecooperation P4: Internet Praktikum Q&A Session Telecooperation Technische Universität Darmstadt Fernando Lyardet

Prof. Dr. M. Mühlhäuser Telekooperation © :2 SSDP The SSDP protocol allows a device to announce to other peers (in Upnp, the control points) that it has become available on the network. First Step: SSDP M_SEARCH (HTTPMU) –advertisement- (ssdp:alive) SSDP M_SEARCH (HTTPU) –description URL- (ssdp:discover) New Device

Prof. Dr. M. Mühlhäuser Telekooperation © :3 HTTPMU Service Advertisement On UDP, you send datagrams – Datagrams = self-contained messages Multicast UDP sends datagrams to a "group" For HTTPMU, the contents of the datagram are HTTPrequests There is no response to these multicast requests – the message may be received by any number of clients. It is not a request-response Situation  A request like GET cannot be interpreted as a request for a documenthttp://localhost/index.html HTTPMU is uses the syntax of HTTP while changing the semantics HTTPMU allows the possibility of new request types such as NOTIFY as well as the standard HTTP requests of GET, POST, HEAD, etc HTTPMU was invented to support UPnP. Is not a W3C standard

Prof. Dr. M. Mühlhäuser Telekooperation © :4 HTTPU Service Discovery HTTPU sends a single datagram over UDP to a host Uses unicast UDP The recipient may send a reply back to the host and port that sent the datagram Again, it is not expected that standard HTTP requests be sent, only that the syntax is obeyed Also no W3C Standard. HTTPU was invented for UPnP

Prof. Dr. M. Mühlhäuser Telekooperation © :5 Notifications (GENA) Notify is multicast by HTTPMU when a device wants to advertise itself, usually at startup Notify message include: –a statement about the device type such as schemas-upnporg:device:BinaryLight:0.9 –an HTTP URL for an XML description of the device Each device has a universally unique id (UUID) so that it can be identified even if it's IP address changes or it leaves and revisits the network There is no response to a notify A notify is also sent at graceful shutdown. The messages are distinguished by the field NTS which is set to ssdp:alive or ssdp:byebye NOTIFY * HTTP/1.1 HOST: :1900 CACHE-CONTROL: max-age = seconds until advertisement expires LOCATION: URL for UPnP description for root device NT: search target NTS: ssdp:alive SERVER: OS/version UPnP/1.0 product/version USN: advertisement UUID

Prof. Dr. M. Mühlhäuser Telekooperation © :6 Multicast with Java (Sender code outline) public void sendMsg() { MulticastSocket UDPmc; // Generate multicast ssdp:alive notify. // Some methods are only to give an idea (eg. „public string getHttpVersion()“) String aliveMsg = ""; aliveMsg = "NOTIFY * HTTP/" + getHttpVersion()+ CRLF; aliveMsg += "LOCATION: //+"....getLocalAddress().getHostAddress()“ + CRLF; //You must complete the notification Packet here... //Packet length should be <1500 bytes (Ethernet MTU=Maximun Transfer Unit). // However the MTU may vary according to the underlying hardware. //Create the datagram Packet to be sent DatagramPacket ssdpAliveMsgPacket = new DatagramPacket(aliveMsg.getBytes(), aliveMsg.getBytes().length, MULTICAST_GROUP, MULTICAST_PORT); //MULTICAST GROUP addresses have a range that consists of addresses from through to //(Class D addresses.) Example: the Multicast Group for upnp is: try { UDPmc = new MulticastSocket(); // Create Multicast Socket UDPmc.joinGroup(InetAddress.getByName(MULTICAST_GROUP)); // Bind the multicast socket to the Multicast group } catch (IOException e) {System.out.println("Exception creating&setting up the m-cast socket");} //Send alive Packet try { UDPmc.send(aliveMsg); } catch (IOException e) { System.out.println("Exception attempting to send Packet"); } // On closing the connection, some clean up: UDPmc.leaveGroup(InetAddress.getByName(MULTICAST_GROUP)); UDPmc.close();

Prof. Dr. M. Mühlhäuser Telekooperation © :7 Multicast with Java (Receiver outline) public ReceivePackets() { try { // create an empty packet to receive data DatagramPacket ssdpAliveMsgPacket = new DatagramPacket(ssdpAliveMsgPacket.getBytes(), ssdpAliveMsgPacket.getBytes().length,MULTICAST_GROUP, MULTICAST_PORT); //Create a Multicast socket MulticastSocket UDPmc = new MulticastSocket(MULTICAST_PORT); // Bind the socket to the Multicast group InetAddress group = InetAddress.getByName(MULTICAST_GROUP); MulticastSocket UDPmc.joinGroup(group); // wait for a packet UDPmc.receive(dp); // Clean up… UDPmc.leaveGroup(ia); UDPmc.close(); } catch (UnknownHostException e) { logger.error(e); } catch (IOException e) { logger.error(e); }