SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for...
Transcript of SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for...
![Page 1: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/1.jpg)
SQL Server 2019 Protocols OverviewJustin Hoffman, Eric Bortei-Doku
![Page 2: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/2.jpg)
Agenda – SQL Server Protocols Overview
• First: Open Specifications – General Introduction
• Then: Open Specifications – SQL Server Perspective
• Core Platform Protocol Areas
• Protocol Use Case: MS-TDS (Quick intro)
![Page 3: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/3.jpg)
Open Specifications – General Intro
![Page 4: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/4.jpg)
Open Specifications – in General
These specifications (documents) allow us to:
Be more open in our business practices, and offer greater
interoperability with our products
Work better with the industry and continue to improve
relationships with customers, students, and partners
![Page 5: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/5.jpg)
Open Specifications – SQL Server Perspective
![Page 6: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/6.jpg)
Technical Documents
Open specification docs also called technical docs
SQL Server technical docs cover:▪File formats
▪Data portability
▪Protocols
▪Standards
Available in different formats:▪DOCX
▪HTML
![Page 7: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/7.jpg)
Technical Document Structure
• Introduction
• Normative sections
Typically sections 2 & 3. Describe the
protocol, file format etc. in technical detail
• Informative sections
• Remaining sections
Provides explanations, examples and
references
• Product behavior appendix
Lists the Microsoft products (and their
versions) to which the content applies
SQL technical documents have
the following structure:
![Page 8: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/8.jpg)
Technical Doc Language & Sections
• Prescriptive language used to clarify the technical requirements for an implementation.• For Required behavior: MUST, MUST NOT
• For Optional behavior: MAY, SHOULD, SHOULD NOT
• Terms used as defined in [RFC 2119]
• Restricted to normative sections by using the appropriate template:
![Page 9: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/9.jpg)
Other Technical Docs – Preview Docs
• Provide advance copies of new
or modified protocols
• Typically published with the
public “BETA” previews of a
Microsoft product
• Documents are not complete, and
the information is subject to
change with the final release of
the software
![Page 10: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/10.jpg)
Other Technical Docs – Errata
clarify information correct errors
correctsdocument Errataupdate
![Page 11: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/11.jpg)
Other Technical Docs – Data Portability
user-created datause in other software products
File Format doc example:
![Page 12: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/12.jpg)
Other Technical Docs – Overview Document
Defines SQL Server protocol families
Scenario-Based
Walkthroughs and examples for:✓ Instance Discovery
✓ Client Connection
✓ Report management, authoring and reviewing
✓ Authentication and authorization
✓ Query processing … and many more
Captured in MS-SSSO
![Page 13: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/13.jpg)
SQL Server Core Platform Areas – Overview Doc
Database Engine
Analysis Services
Reporting Services
Master Data Services
Complex Event Processing Engine
Manageability
![Page 14: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/14.jpg)
Database Engine
• Core service for storing, processing, and securing data.
• Collection of protocols for application runtime purposes
and application management purposes
![Page 15: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/15.jpg)
SQL Server Functional Architecture
• Protocols implemented
as client access
libraries
• Libraries provide
flexibility in
connecting between
client and engine
![Page 16: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/16.jpg)
New Features at a Glance
• SQL Server 2017 introduced:• Graph for Many-to-many relationship modelling
• Database-scoped Credentials
• Machine Learning Services
• SQL Server 2019 preview features:• Calc members (MS-SSAS-T)
• Memory resource governance (MS-SSAS)
• Secure enclaves (MS-SCCSTR, MS-TDS)
![Page 17: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/17.jpg)
New Features at a Glance – Secure enclaves
Expands upon the Always Encrypted feature:
• Provides in-place encryption
• Supports computations on plaintext data in secure
enclave
• Sensitive data protected from unauthorized high-
privilege users
• SCCSTR and TDS protocols updated to support this
![Page 18: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/18.jpg)
New Features at a Glance – Secure enclaves
![Page 19: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/19.jpg)
SQL Server Protocol Use Case: MS-TDS (Quick intro)
![Page 20: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/20.jpg)
MS-TDS High Level Overview
• Tabular Data Stream (TDS) protocol is an application
layer request/response protocol, allows interaction
with a database server and provides:
Authentication and channel encryption
negotiation
• Transfer of requests & commands (like BULK INSERT)
• Mechanism for invoking stored procedures, remote
procedure calls
• Data return
• Transfer of Transaction Manager requests
![Page 21: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/21.jpg)
MS-TDS Communication Sequence States
Pre-Login state▪Client initiates communication with initial PRELOGIN packet
▪Server responds
▪… (sequence continues)
Login state▪Client sends TDS Login request to server with SPNEGO packet
▪Server responds
▪… (sequence continues)
Post-Login state▪Server ready to accept SQL commands from client
▪For example, client sends BULK INSERT command to server
See [MS-TDS] section 3.1.5
![Page 22: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/22.jpg)
MS-TDS Pre-Login Communication Sequence
![Page 23: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/23.jpg)
MS-TDS BULK INSERT Communication Sequence
![Page 24: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/24.jpg)
Questions?
![Page 25: SQL Server 2019 Protocols Overview - Microsoft...•SQL Server 2017 introduced: • Graph for Many-to-many relationship modelling • Database-scoped Credentials • Machine Learning](https://reader035.fdocuments.us/reader035/viewer/2022071405/60f9b31f495d430cb64114a8/html5/thumbnails/25.jpg)
© Copyright Microsoft Corporation. All rights reserved.
Thank you!