an overview of systems and networking research at microsoft research michael b. jones systems and...
Post on 21-Dec-2015
217 views
TRANSCRIPT
![Page 1: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/1.jpg)
An Overview of Systems and An Overview of Systems and Networking Research at Networking Research at
Microsoft ResearchMicrosoft Research
Michael B. Jones
Systems and Networking Research Group,Microsoft Research
April 1999
![Page 2: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/2.jpg)
Microsoft ResearchMicrosoft ResearchA quick primerA quick primer
Founded in 1991 Goal: Pursue strategic technologies
for Microsoft Original research groups:
Natural Language Processing Operating Systems Programming Languages
![Page 3: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/3.jpg)
Microsoft ResearchMicrosoft Research Over 300 researchers in 27 areas
Speech, Decision Theory, Graphics, Databases, to Statistical Physics
Research lab locations: Redmond, San Francisco, Cambridge (UK),
Beijing
Internationally recognized research teams Hundreds of publications, presentations Leadership roles in professional societies,
journals, conferences
![Page 4: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/4.jpg)
Fastest Growing CS Fastest Growing CS Research Organization Research Organization
In The WorldIn The World Grew by factor of four from ’94 to ’97 Decided in ’97 to grow by a factor of
three in three years 200 in FY ’97 => 600 in FY ’00,
primarily in Redmond
Major impact on Microsoft products Virtually all MS products shipped today
use technology from Microsoft Research
![Page 5: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/5.jpg)
Systems and Networking Systems and Networking Research GroupResearch Group
One of the original three research groups at Microsoft Research in Redmond Formerly called the “Operating Systems
Research Group” Name changed in 1998 to explicitly include
networking
Group presently 15 members Working in four areas
![Page 6: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/6.jpg)
Past ProjectsPast Projects
Tiger Scalable, fault-tolerant multimedia file
system using commodity hardware
Rialto Real-time kernel enabling predictable
concurrent execution of independent real-time programs
Both were used in Microsoft's Interactive TV trial in 1996-1997 with NTT in Yokosuka, Japan
![Page 7: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/7.jpg)
Current Research AreasCurrent Research Areas
Networking Distributed Computing Operating Systems Real-Time Systems
![Page 8: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/8.jpg)
Group Members andGroup Members andCurrent Research AreasCurrent Research Areas
Victor Bahl – Net Bill Bolosky – OS Gerald Cermak – Dist.
Sys. Scott Cutshall – OS Rich Draves – Net John Douceur – OS Alessandro (Sandro)
Forin – Net Johannes Helander – OS
Galen Hunt – Dist. Sys. Mike Jones – Real-Time
Sys. Steve Levi – Dist. Sys. Venkat Padmanabhan –
Net Marvin Theimer – OS Yi-Min Wang – Dist. Sys. Brian Zill – Net
![Page 9: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/9.jpg)
Networking ProjectsNetworking Projects Location Aware Systems and Services Hardware Adapter for Light-Weight
Mobile Networking IPv6 Automatic Network Configuration High Performance & Sys. Area Networking DCOM over SAN TCP Fast Start, Network Performance
Improvement Multicast-based Data Dissemination
![Page 10: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/10.jpg)
Distributed Computing Distributed Computing ProjectsProjects
Millennium Distributed, Fault-Tolerant
Applications Automatic Application Partitioning Distributed Java Virtual Machine
![Page 11: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/11.jpg)
Operating Systems ProjectsOperating Systems Projects
Componentized System Architecture Single-Instance Store Filesystem Unobtrusive Background
Computation Transactional Filesystem
![Page 12: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/12.jpg)
Real-Time Systems ProjectsReal-Time Systems Projects
Real-Time Scheduling Real-Time Latency Measurement
![Page 13: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/13.jpg)
Current ProjectsCurrent Projects
Grouped by Research Areas
![Page 14: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/14.jpg)
Networking ProjectsNetworking Projects
![Page 15: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/15.jpg)
Location Aware Systems and Location Aware Systems and ServicesServices
In-building location-aware system Wireless mobile nodes precisely
compute their geographic location Enable new class of mobile applications
E.g., use nearest printer, etc.
Victor Bahl, Venkat Padmanabhan, Turner Whitted, Josh Broch (CMU)
![Page 16: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/16.jpg)
Hardware Adapter for Light-Hardware Adapter for Light-Weight Mobile NetworkingWeight Mobile Networking
MCoM (Mobile Communicator) Project Light-weight devices network in both
ad-hoc and controlled manner Investigates protocol and systems
issues: Energy conservation Multi-hop routing In presence of link failures, mobility
Victor Bahl, Turner Whitted
![Page 17: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/17.jpg)
IPv6IPv6
Internet Protocol Version 6 (IPv6) implementation for Windows NT Freely downloadable Numerous v6 utilities also available
Multi-homing issues Rich Draves, Brian Zill, ISI (Allison
Mankin, etc.) Published in ’98 USENIX NT
![Page 18: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/18.jpg)
Automatic Network Automatic Network ConfigurationConfiguration
Algorithms for auto-configuring IP networks
Address and subnet assignment that optimize the network’s efficiency
Rich Draves, Chris King (Northeastern), Cheenu Venkatachary (WUSTL)
Published in InfoCom ’99
![Page 19: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/19.jpg)
High Performance & System High Performance & System Area NetworkingArea Networking
High-performance networking under NT VIA-like and memory-like interconnects It’s WinSock! No need to rewrite apps No loss of performance Easily extensible (RDMA, registration, …) Gigabit Ethernet Jumbo Frames
TCP Switch Layered WSP over SAN vendor’s WSP
Sandro Forin, Johannes Helander, NT Published at DARPA NT Workshop
![Page 20: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/20.jpg)
Hybrid SAN-TCP/IP ArchitectureHybrid SAN-TCP/IP Architecture
User
Kernel
Winsock
AFD
MsAfd
TCP/IP
Switch
TDI App
Winsock App
Switch
SAN WS Provider
SAN NDIS MiniPort
SAN TDIProvider
SAN NIC
Winsock
AFD
MsAfd
TCP/IP
TDI App
Winsock App
SAN NIC
SAN MiniPort
SANWS
Driver
TDI
NDIS
Winsock SPI
TDI
![Page 21: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/21.jpg)
DCOM Over SANDCOM Over SAN
Millennium Falcon project Implement high-performance distributed
object systems For clusters of servers Connected by SANs
Take full advantage of user-mode nets Current implementation based on DCOM
and VIA Yi-Min Wang
![Page 22: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/22.jpg)
TCP Fast Start, Network TCP Fast Start, Network Performance ImprovementPerformance Improvement Reuse information learned in past
Rather than rediscover it each time E.g., TCP congestion window
Venkat Padmanabhan, Randy Katz (Berkeley)
Published at Globecom ’98 Internet Mini-Conference
![Page 23: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/23.jpg)
Multicast-based Data Multicast-based Data DisseminationDissemination
Quantify potential benefits of multicast for information dissemination Based on HTTP logs
Evaluate algorithms/heuristics for deciding which data should be multicast
Venkat Padmanabhan
![Page 24: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/24.jpg)
Distributed Computing Distributed Computing ProjectsProjects
![Page 25: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/25.jpg)
Distributed, Fault-Tolerant Distributed, Fault-Tolerant ApplicationsApplications
Millennium Project Unifying vision behind several individual
prototype projects
Galen Hunt, Yi-Min Wang, Gerald Cermak, Johannes Helander, Rick Rashid
Initial position paper published at HotOS-VI, 1997
![Page 26: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/26.jpg)
Problem Building distributed, fault tolerant
applications is too hard, costs too much
Goal Raise the level of abstraction provided
by the operating system Individual computers, file systems,
networks unimportant to component builders
MillenniumMillennium
![Page 27: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/27.jpg)
App
NTNTNT
AppApp
COM+COM+COM+
App App
Millennium:Millennium:Raise the Level of AbstractionRaise the Level of Abstraction
Maintain single system image.
Transparent invocation, migration, and recovery.
Individual computers, file systems, and networks become unimportant to application developers.
Millennium
Application
![Page 28: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/28.jpg)
Automatic Application Automatic Application PartitioningPartitioning
Millennium Coign Project Galen Hunt Published in OSDI ’99
![Page 29: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/29.jpg)
Before: After:
Coign: Coign: Automatic Distributed Automatic Distributed
PartitioningPartitioning Converts local COM applications into
distributed client-server applications without source code.
![Page 30: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/30.jpg)
The Plan:The Plan:1. Find Components in Application Binaries
2. Identify Interfaces and Measure Communication
3. Partition and Distribute Components
![Page 31: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/31.jpg)
COP: Component Object COP: Component Object ProxyProxy
Transparently remote Win32 API calls Factor Win32 interface Automatically create DCOM interfaces Transparently insert proxy objects Galen Hunt, Gerald Cermak
![Page 32: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/32.jpg)
Millennium ContinuumMillennium Continuum
Provides single system image for Windows API
Automatic object placement and migration at run-time
Language neutral At least Visual Basic, C, C++, Java
Based on COM+ Galen Hunt, Gerald Cermak, Rick
Rashid
![Page 33: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/33.jpg)
Distributed Java Virtual Distributed Java Virtual MachineMachine
Millennium Borg project Makes multiple JVMs appear to be one Unmodified Java programs may run as
distributed applications Transparent distribution, migration Johannes Helander
![Page 34: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/34.jpg)
Operating Systems ProjectsOperating Systems Projects
![Page 35: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/35.jpg)
Componentized System Componentized System ArchitectureArchitecture
MMLite Project Kernel object architecture stressing
adaptability, minimalism, reusability Many normally “built-in” components
selectable, loadable E.g., Virtual Memory, IPC
Johannes Helander, Sandro Forin Published at ’98 SigOps European
Workshop
![Page 36: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/36.jpg)
Single-Instance Store Single-Instance Store FilesystemFilesystem
Enables single on-disk instance of files with multiple logical copies
Sharing transparent to applications Replicas found in background, coalesced
Bill Bolosky, Scott Cutshall, John Douceur, NT filesystem group
Planned to ship with Windows 2000
![Page 37: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/37.jpg)
Unobtrusive Background Unobtrusive Background ComputationComputation
“How to be Really Nice” Background processes that don’t
interfere with foreground work Even if neither CPU-bound
Based on progress metrics Back off when statistically significant
slowdown observed
John Douceur, Bill Bolosky
![Page 38: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/38.jpg)
Transactional FilesystemTransactional Filesystem
Research version of NTFS with transactional semantics
Marvin Theimer
![Page 39: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/39.jpg)
Real-Time Systems ProjectsReal-Time Systems Projects
![Page 40: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/40.jpg)
Real-Time SchedulingReal-Time Scheduling
Scheduling abstractions enabling predictable concurrent execution of independent real-time programs
Mike Jones, John Regehr (Virginia), formerly Daniela Rou (GA Tech), Marcel Rou (GA Tech), George Candea (MIT)
Published in ’96 SigOps, ’97 SOSP, ’98 & ’99 USENIX Windows NT
![Page 41: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/41.jpg)
Real-Time Latency Real-Time Latency MeasurementMeasurement
Understand, fix sources of long thread scheduling latencies in NT
Mike Jones, John Regehr (Virginia) Published in ’98 NOSSDAV & ’99
HotOS
![Page 42: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/42.jpg)
Problem: “Unimportant” Problem: “Unimportant” Background WorkBackground Work
DEC dc21x4 PCI Fast 10/100 Ethernet 6ms periodic DPC every 5s
Autosense processing Most of 6ms in five 0.88ms calls to
routine that reads device register that: Writes a HW register – 1.5µs Stalls for 5µs Writes HW register again – 1.5µs Stalls for 5µs Reads a HW register – 1.5µs Stalls for 5µs
And does this 16 times! (once per bit)
![Page 43: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/43.jpg)
Another Long DPC: Intel EE 16Another Long DPC: Intel EE 16
Intel EtherExpress 16 ISA Ethernet 17ms DPC every 10s Card reset for no received packets
Amusing Observation Unplugging Ethernet makes latency
worse! Despite conventional wisdom to the
contrary
![Page 44: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/44.jpg)
Even Worse: Video CardsEven Worse: Video Cards Video cards and drivers conspire to
hog the PCI bus Dragging large window locks out
interrupts for up to 30ms Obliterates sound I/O, for instance Can set registry key to ask drivers to
behave, but not default No problem when set correctly
Manufacturers’ motivation: WinBench ~ 5% improvement
![Page 45: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/45.jpg)
Video CardVideo CardMisbehavior DetailsMisbehavior Details
Don’t check if card FIFO full before write Eliminates one PCI read Stalls PCI bus if full to prevent overflow Uses “PCI disconnect” feature
![Page 46: An Overview of Systems and Networking Research at Microsoft Research Michael B. Jones Systems and Networking Research Group, Microsoft Research April 1999](https://reader035.vdocuments.us/reader035/viewer/2022062320/56649d585503460f94a37aa4/html5/thumbnails/46.jpg)
For More InformationFor More Information
Systems and Networking Research Group web pages: http://research.microsoft.com/sn/