Redmond Protocols Plugfest 2016 Andrew Davidoff Exchange 2016 Protocol Overview Senior Software Engineer.

Slides:



Advertisements
Similar presentations
Minimising IT costs, maximising operational efficiency minimising IT costs, maximising operational efficiency Balance.
Advertisements

Exchange Online: Pricing & Licensing Overview. | Copyright© 2010 Microsoft Corporation Agenda Overview of Office 365 suite offers Exchange Online standalone.
Kalpesh Vyas & Seward Khem
Daniel Kenyon-Smith UC Consultant – MCS UK. Optimize for Software + Services Deployment Flexibility Continuous Availability Simplify Administration Manage.
Office 365 for Enterprises: Pricing & Licensing Overview
Identity and Access IDGo Secure (ISE) for Android Didier Bonnet April 2015.
How Clients and Servers Work Together. Objectives Web Server Protocols Examine how server and client software work Use FTP to transfer files Initiate.
Access 2007 Product Review. With its improved interface and interactive design capabilities that do not require deep database knowledge, Microsoft Office.
Remote mailbox access gateway Software lab project.
Cross Platform Web Based Home Inventory System Project Team: Jon Garibay, Firas Assaad Faculty Advisor: Dr. Lawrence Thomas.
COS/PSA 413 Day 17. Agenda Lab 8 write-up grades –3 B’s, 1 C and 1 F –Answer the Questions!!! Capstone progress report 2 overdue Today we will be discussing.
1 Using Account Status Web Service to design value-added services for your online applications Ivan Chan Media & Systems Services 8th Annual HKIUG Meeting.
Unified. Simplified. Unified Communications Launch 2007.
Exchange 2010 Overview Name Title Group. What You Tell Us Communication overload Globally distributed customers and partners High cost of communications.
Overview of Exchange 2013 Architecture Transport components shipping with Exchange 2013 Mail Routing Scenarios Transport High Availability SMTP Client.
TechEd /20/2017 2:02 AM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
Managing Client Access
Module 4 Managing Client Access. Module Overview Configuring the Client Access Server Role Configuring Client Access Services for Outlook Clients Configuring.
VPresent Collaborative Presentation System on Mobile Devices.
Computer Concepts 2014 Chapter 7 The Web and .
 2:00 pm - 2:15 p.m. ◦ Intro, Welcome and Overview of Agenda  2:15 p.m. - 3:00 p.m. – Admin Training ◦ Introduction to Live at EDU and roadmap.
Data Communications and Computer Networks Chapter 2 CS 3830 Lecture 9
Computer Networking From LANs to WANs: Hardware, Software, and Security Chapter 12 Electronic Mail.
MCSE Guide to Microsoft Exchange Server 2003 Administration Chapter Four Configuring Outlook and Outlook Web Access.
Securing Microsoft® Exchange Server 2010
Module 6: Manage and Configure Messaging. Configuring Internet Mail Using Small Business Server (SBS) 2008 Console Configuring Protection Configuring.
IT:Network:Applications.  How messaging servers work  Initial tips for success Exchange management  Server roles  Exchange Server Management  Message.
Unit 2: Web Foundations Text book: Web Technology Theory & Practice by M.Srinivasan.
INSTALLING MICROSOFT EXCHANGE SERVER 2003 CLUSTERS AND FRONT-END AND BACK ‑ END SERVERS Chapter 4.
Application Layer CHAPTER 2. Announcements and Outline  Administrative Items  Questions? Recap 1.Introduction to Networks 1.Network Type 2.N etwork.
Enabling Embedded Systems to access Internet Resources.
Xavier Lawrence March X. Lawrence - Synchronization of Calendars with a Calendar Server - 2 / 20 Presentation Overview Introduction Project Objectives.
Exchange Exchange Server Role Architecture in Exchange Server 2013 Server roles in Exchange Server 2013: Client Access Server Mailbox Server Client.
Microsoft Visual Studio 2010 Muhammad Zubair MS (FAST-NU) Experience: 5+ Years Contact:- Cell#:
Electronic Mail. Client Software and Mail Hosts –Client PC has client software that communicates with user’s mail host –Mail hosts deliver.
Module 4 Planning and Deploying Client Access Services in Microsoft® Exchange Server 2010 Presentation: 120 minutes Lab: 90 minutes After completing.
Appendix A UM in Microsoft® Exchange Server 2010.
POP3
Module 3 Planning and Deploying Mailbox Services.
Module 6: Managing Client Access. Overview Implementing Client Access Servers Implementing Client Access Features Implementing Outlook Web Access Introduction.
Module 12 Upgrading from Exchange Server 2003 or Exchange Server 2007 to Exchange Server 2010.
Module 7 Planning and Deploying Messaging Compliance.
XML and Web Services (II/2546)
CS 3830 Day 9 Introduction 1-1. Announcements r Quiz #2 this Friday r Demo prog1 and prog2 together starting this Wednesday 2: Application Layer 2.
TCP/IP (Transmission Control Protocol / Internet Protocol)
Kemal Baykal Rasim Ismayilov
INTERNET PROTOCOLS. Microsoft’s Internet Information Server Home Page Figure IT2031 UNIT-3.
S O A P ‘the protocol formerly known as Simple Object Access Protocol’ Team Pluto Bonnie, Brandon, George, Hojun.
MSG331 Exchange Server 2000/2003 Software Development Kit Susan Hill Lead Programmer Writer Microsoft Corporation.
Implementing Microsoft Exchange Online with Microsoft Office 365
Module 1: Overview of Microsoft Office SharePoint Server 2007.
Common Solutions Group May 13,  Faculty/Staff appropriate grade of service  Full Exchange environment ◦ Outlook ( , contacts, calendar, tasks)
MCSE Guide to Microsoft Exchange Server 2003 Administration Chapter One Introduction to Exchange Server 2003.
Jason Henderson Principal Program Manager Microsoft Corporation SESSION CODE: UNC310.
EWS Overview Tom Jebo Microsoft Open Specifications.
ITS Lunch & Learn November 13, What is Office 365? Office 365 is Microsoft’s software as a service offering. It includes hosted and calendaring.
Microsoft ® Outlook & Microsoft Exchange Delivering Value & Choice across PC, Phone, and Browser The Right Tool for the Job Delivering Value & Choice.
Microsoft Virtual Academy Talbott Crowell | Chief Architect, ThirdM.com Rob Latino | Program Manager in Office 365 Support, Microsoft.
1 Outlook web app مریم جعفری. Preface 2 Webmail (or web-based ) is any client implemented as a web application running on a web server. Examples.
XML and Distributed Applications By Quddus Chong Presentation for CS551 – Fall 2001.
Redmond Protocols Plugfest 2016 Jingyu Shao Parsing Office Traffic: Message Analyzer & Fiddler Software Engineer.
Redmond Protocols Plugfest 2016 Jinghui Zhang Office Interoperability Test Tools (Test Suites and Open Source Projects) Software Engineer Microsoft Corporation.
Redmond Protocols Plugfest 2016 Andrew Davidoff Mail, Calendar, and Contacts Graph API Demonstration Senior Software Engineer.
(ZCO) ZIMBRA Connector for Outlook User Manual
Data Communications and Computer Networks Chapter 2 CS 3830 Lecture 9
MICROSOFT OUTLOOK and Outlook service Provider
Exchange Protocols Overview
OPERATING SYSTEMS.
Outlook 2007 & Google Apps Sync
Presentation transcript:

Redmond Protocols Plugfest 2016 Andrew Davidoff Exchange 2016 Protocol Overview Senior Software Engineer

Agenda Brief introduction to Exchange Server Open Specifications An overview of the protocol architecture for Exchange Important protocol families that are used to communicate with Exchange Server

Introduction to Open Specifications Normative language Designed to document bits over the wire No APIs – only Protocols MUST, SHOULD, MAY are used to document version-specific behavior Strict document structure Windows/Exchange or product API knowledge not required… Microsoft Products are not mentioned in normative content, only in endnotes

Exchange Protocols

Overview Document [MS-OXPROTO] Defines Exchange protocol families Scenario-Based How multiple protocols work together in typical scenarios How to complete the same task using different protocol families Walkthroughs and examples Send using different protocols Resolve a recipient from an Address Book Synchronize items Many other scenarios

Protocol families RPC/ROPS (Remote Operations, the core protocol family behind MAPI) Name Service Provider Interface (NSPI) provides access to Address Book New in Exchange 2013 – MAPI over HTTP, combines ROPS and NSPI bypassing RPC layer Exchange Web Services (EWS) Exchange ActiveSync (EAS) Other groups of protocols Autodiscover Content Conversion Standards Support

Client communication with ExchangeEAS EWS MAPIHTTP POP/IMAP SMTP Storage NSPI RPC/ROPs MAPI

Exchange RPC/ROPs protocols Implemented in some form from “Day 1” (such as Exchange 4.0), extended and re-architected several times Low-level access to Exchange Storage Workhorse for Outlook communication with Exchange Used by MAPI Transport layer: ROPs (Remote Operations) within an RPC binary blob Optimized to minimize traffic on the wire; very complex parsing RPC can use HTTPS or TCP connections (HTTPS-only in Exchange 2013) New [MS-OXCMAPIHTTP] as alternative to use ROPs over HTTP; no RPCs

Exchange RPC/ROPs: Transport Header RPC : Binary Blob ROP1ROP2… RopID ROP Data HSOT Table RopSize RopID ROP Data Note: No ROP Data size or end marker. Every ROP Data in the blob must be parsed. Every RopID has different ROP Data structure. Number of documented RopIDs: 130 (EcDoRpcExt2)

RPC/ROPS protocols - continued RPC/ROPs protocols define both Exchange (server) and Outlook (client) behaviors Client (not Server) is handling logic behind complex items – messages, folders, calendar items, contacts, tasks, etc. Naming: [MS-OXO*] and [MS-OXC*] (few exceptions) 40+ Protocols, ~3000 pages

Exchange Web Services (EWS) Alternative to RPC protocols Higher level of abstraction compared with RPC protocols EWS implement messages, attachments, calendar events, contacts on server side in a way that is interoperable with Outlook. First implemented in Exchange Server 2007 Current support in Exchange 2016 as well as Exchange Online Outlook uses subset of EWS protocols Unified Messaging, MailTips, Availability, OOF, Office Apps, Room List, Archive, Mailbox Policies, Calendar Sharing, Site Mailboxes, etc. New Exchange features are likely to be implemented in EWS Intuitive/readable XML (vs MAPI) (easier troubleshooting)

Exchange Web Services (EWS) - continued Versioning Clearly defined Versioned by schema for the SOAP bodies RequestServerVersion header element in each request let’s client to request version-specific behavior Transport: SOAP over HTTP(S) Code against it using any language/platform that supports making HTTP/SOAP calls Naming: [MS-OXW*] 43 Protocols, ~2000 pages

EWS Schema versions Archiving eDiscovery Personas Retention policies Unified Contact Store User photos Full access to items, folders, and attachments (Create, Get, Update, Delete) Availability Out of Office settings Notifications Synchronization Name resolution Distribution list (DL) expansion Search MS-OXWSCDATA t:ExchangeVersionType Simple Type

Exchange ActiveSync (EAS) Lightweight synchronization protocol for Microsoft Exchange Optimized to work on high-latency and low-bandwidth networks High level of abstraction, similar to EWS in complexity Provides access to , calendar, contacts, tasks, documents, etc. Designed to maximize battery life Device management enforcement for enterprise organizations Industry standard, several non-Exchange Server implementations Wide range of clients – Windows, iOS, Android, … Server support from Exchange Server 2003 to latest Exchange Server 2016

Exchange ActiveSync (EAS) - continued Versioning Clearly defined version negotiation Version-specific features documented in open specifications Transport WBXML over HTTP(S) Naming: [MS-AS*] 15 Protocols, ~900 pages Licensing requirements

Typical Usage of Exchange ActiveSync Mobile phones “De-facto standard” supported by applications on all major platforms. Tablets Allows for low-bandwidth and high-latency data (Internet) connections while scaling reasonably on high-speed connections. Lightweight desktop applications Windows 8/8.1/10 Mail application uses EAS. Mobile Applications Not all Exchange features are accessible through EAS

Version History 2.5- Exchange Server 2003 SP Exchange Server Exchange Server 2007 SP Exchange Server Exchange Server 2010 SP Exchange Server 2016

Other Exchange protocols Autodiscover Content Conversion Standards-based protocols – Extensions and Compliance [MS-OXPROTO] is a good reference

Exchange Server and Outlook Standards Support Microsoft is currently seeking feedback on support for mail and calendaring standards in the next major versions of Exchange and Outlook. Exchange and Outlook currently support several mail and calendar standards, including: IMAP (RFC 3501) POP3 (RFC 1939) iCalendar (RFC 2445, RFC2446, and RFC 2447) The feedback period is 90 days, ending on August 10, During this time please provide suggestions and feedback via the following mechanisms: o o Tweet at us o Let us know in our forums: us/home?forum=os_specificationshttps://social.msdn.microsoft.com/forums/en- us/home?forum=os_specifications o Talk to us at this event or any other plugfest during the feedback period! We are listening!

Exchange test tools update New parsers for Message Analyzer Protocol families: EAS, EWS, RPC, and MAPIHTTP New test suites for EAS, EWS, RPC, and MAPIHTTP Fiddler Inspectors for MAPIHTTP and other protocols

Exchange protocols resources All Exchange protocol documents Microsoft Message Analyzer Fiddler inspectors for Office and Exchange protocols Protocol Test Suites Help with Open Specifications: Office Interoperability blog:

Redmond Protocols Plugfest 2016 Questions or Comments?

Redmond Protocols Plugfest 2016 Thank You!