Table of Contents
What is computer networking?
Windows Connect Now Overview
Why visualize connectivity?
Link Layer Topology Discovery (LLTD)
o How LLTD works overall
o How the LLTD Responder works
OSI and Protocol Stack
o Data Framing
o Error Detection/Correction
o Services to the network layer
o Flow control
Call to action
What is (Computer) Networking?
Networking is the practice of linking computing devices together with hardware and software
that supports data communications across these devices.
Windows Networking and Device Connectivity
“It Just Works” experience for users
Simple protocols, APIs and DLLs for partners
Secure and Reliable
Built-in security to enable higher user confidence
Make reliability a fundamental part of the solution
Foundation for the Future
Continue enabling compelling new user experiences
Windows Connect Now Programs
Guidance Licensing Program
Windows Connect Now Technologies
Devices Class APIs
WCN Configuration (Digital Still Cameras,
Portable Media Players,
PnP-X WS-D, UPnP
Windows Connect Now Technologies
Why Visualize Connectivity?
Users having difficulties setting up their network
Users don’t know or want to know how their networks are wired
We still have a way to go until networking is truly “plug and play”
Users have difficulties troubleshooting issues on their network
Multiple points of failure
Hubs, Switches, Gateways, APs, Bridges, Cables
Requires technical skill set to fix
Tedious to check power, connectivity, link integrity to discover issues
Remote support effectiveness limited by lack of network connectivity
Difficult support experience
Takes up time and generates user frustration
Cannot properly describe topology to support technicians
Erodes customer satisfaction and trust
Expensive for vendors to support
Blame the issue on the wrong device; may result in product return!
The solution is the Network Map and Link Layer Topology Discovery!
Shows the devices physically connected to the network
Provides basic information about the device
Device name, manufacturer info, IP address, etc.
Keeps history of last known topology per profile
to see if things have changed
Shows how the devices are connected together
What’s plugged into what
What’s the path to the Internet
What’s the path to other devices on my network
Adds diagnostic information on top of topology map to help users resolve issues
Shows where the issue is on the network
Provides entry point for diagnostic tasks
Integrated with the Network Explorer
Unified location for seeing PCs and network devices
How the Network Map gathers information
Universal Plug and Play
Link Layer Topology Discovery
Link Layer Topology Discovery
Layer 2 protocol for:
Discovery and mapping of network devices
Performing time-probe QoS tests
Does not need IP connectivity to work
Consists of a Mapper and a Responder
Not all devices need to implement Responder for discovery and mapping to work
The more Responders on the network, the better we can map the topology
of the network
Value of LLTD
Lower support costs
Users can troubleshoot issues themselves
Users can describe their network topology accurately
Enhanced presence in Windows Networking UI
LLTD Architecture on Windows Longhorn
Network Map Application
Mapper Responder LLTD
Driver Driver Modules
LLTD Architecture on Network Devices
Network Interface OS
LLTD Mapper and Responder
Service that queries for devices on the network
Sends out requests to Responders to run tests
Interprets results from Responders to create the topology map
Sends topology map information to Network Map for rendering
Implemented on network-attached devices
Performs tests on the network to
Determine what other devices are on the same segment
Determine what infrastructure device it is attached to
Determine quality of service between devices
Quiescent, Hello, Command Loop, Emit
Responder waits for a Mapper to start the mapping process
Listens to broadcast frames waiting for a MapBegin
After Responder sees a MapBegin frame, it moves to the Hello state to begin
association process with a Mapper
A Responder can be associated with only one Mapper at a time.
Responder associates with a Mapper
Mapper gets a list of Responders on the network
A generation number (unique identifier for the mapping session) is created
Responders pay attention to avoid network overload on large networks
Subsequent Mappers are told that a mapping session is already occuring on the
After association with Mapper is complete, a Responder moves to the Command
Command Loop State
The Command Loop state is where Responders spend most of their active time
Interface is in promiscuous mode
Responders execute Emit and Query commands received from a Mapper
Emit includes a list of probe tests, each of which requests that the
Responder transmit frames with the given source and destination Ethernet
Query asks the Responder to return its list of probe information
Responders go to the Emit state when they have a valid Emit frame from Mapper
Each entry from the existing list of Emit requests is serviced in turn
A Responder continues to handle incoming protocol frames
Drops incoming Emit and Query requests
After all the requests are serviced, the Responder returns to the Command Loop
Responder State Diagram
Required Type Length Values (TLVs)
Link Local IPv6 Address (if applicable)
Wireless Mode (if applicable)
BSSID (if applicable)
Machine / Device Name
The OSI Reference Model
The Data Link Layer Functions
Concerned with reliable, error-free and efficient communication
between adjacent machines in the network through the following functions:
1 Data Framing:
The term “frame” refers to a small block of data used in a specific network.
The data link layer groups raw data bits to/from the physical layer into discrete
frames with error detection/correction code bits added. Framing methods:
– Character count.
– Starting and ending characters, with character stuffing.
– Starting and ending flags with bit stuffing.
– Physical layer coding violations.
2 Error Detection/Correction:
– Error Detection:
• Include enough redundant information in each frame to allow the
receiver to deduce that an error has occurred, but not which error
and to request a retransmission.
• Uses error-detecting codes.
– Error Correction:
• Include redundant information in the transmitted frame to enable
the receiver not only to deduce that an error has occurred but also
correct the error.
• Uses error-correcting codes.
3 Services to the network layer:
– Unacknowledged connectionless service:
• Independent frames sent without having the destination
• Suitable for real-time data such as speech and video where
transmission speed is more important than absolute reliability.
• Utilized in most LANS.
– Acknowledged connectionless service:
• Each frame sent is acknowledged by the receiver.
• Acknowledgment at the layer level is not essential but provides
more efficiency than acknowledgment at higher layers (transport)
which is done only for the whole message.
• A lost acknowledgment may cause a frame to be sent and received
– Acknowledged connection-oriented service:
• The sender and receiver establish a connection before any data
• The message is broken into numbered frames.
• The data link guarantees that each frame sent is received exactly
once and in the right order.
4 Flow control:
Protocols to control the rate the sender transmits frames at a rate acceptable to the
receiver, and the ability to retransmit lost or damaged frames. This insures that slow
receivers are not swamped by fast senders and further aids error detection/correction.
– Several flow control protocols exist, but all essentially require a form of
feedback to make the sender aware of whether the receiver can keep up.
• Stop-and-wait Protocols:
– A positive acknowledgment frame is send by the receiver
to indicate that the frame has been received and to indicate
being ready for the next frame.
– Positive Acknowledgment with Retransmission (PAR);
• Sliding Window Protocols:
– Data frames and acknowledgement frames are mixed in
– Frames sent contain sequence numbers
– Timeouts used to initiate retransmission of lost frames.
Transmission Control Protocol
Connection-Oriented, Reliable, Byte Stream Service
1. Set up connection
2. Transfer data
3. Close connection
TCP : State Diagram
Call To Action
Implement the LLTD Responder in your device
Available under the Windows Connect Now licensing program launching
What you get
Responder protocol spec
Reference Responder code
Test validation tool