<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>On The Wire</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/onthewire/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/onthewire/feed.xml</link>
    <description>Office 365 and Network Connectivity hints and tips</description>
    <lastBuildDate>Tue, 18 Jun 2019 12:40:43 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>Office 365 Connectivity Guidance: Part 4</title>
      <link>https://docs.microsoft.com/archive/blogs/onthewire/office-365-connectivity-guidance-part-4-2</link>
      <pubDate>Tue, 18 Jun 2019 11:41:51 GMT</pubDate>
      <dc:creator><![CDATA[Paul Collinge (MSFT)]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/onthewire/?p=4165</guid>
      <description><![CDATA[4. Assess bypassing proxies, traffic inspection devices and duplicate security technologies

The...]]></description>
      <content:encoded><![CDATA[<p style="text-align: justify"><span style="color: #333333;font-family: Georgia;font-size: 16pt"><strong><a></a>4.<u> <span><span style="color: black;text-decoration: underline"><span style="background-color: white">Assess bypassing proxies, traffic inspection devices and duplicate security technologies</span><span style="color: #333333;text-decoration: underline">
</span></span></span></u></strong></span></p>
<p style="text-align: justify"><span style="color: #000000;font-family: Georgia;font-size: 12pt"><u></u>The final principle is to get your core Office 365 traffic to Microsoft as efficiently as possible; this means minimising the work done on the traffic or ensuring any work done doesn't cause an impact to that traffic. As already noted, when moving to the cloud it's necessary to rethink about how you handle traffic leaving your managed network for trusted endpoints such as Office 365.
</span></p>
<p style="text-align: justify"><span style="color: #000000;font-family: Georgia;font-size: 12pt">The bulk of an enterprise's cloud traffic will be user-initiated connectivity to the cloud and that is what this page is referring to, where the traffic is from the enterprise to Microsoft endpoints which will account for the majority of the traffic flow. For inbound flows, (Microsoft initiated inbound to the enterprise) it is understood that a higher degree of inspection/control may be desired, the volume of traffic in this direction is also comparatively low.
</span></p>
<p style="text-align: justify"><span style="color: #000000;font-family: Georgia;font-size: 12pt">When there is a move to SaaS services like Office 365, numerous connections which were once kept within the corporate network in their entirety, now traverse the egress equipment to reach the endpoints in the cloud. As noted, this is often a large volume of traffic which puts terrific load on the standard egress equipment/method to egress to the internet, and thus is performing break and inspect on all traffic.
</span></p>
<p style="text-align: justify"><span style="color: #000000;font-family: Georgia;font-size: 12pt">Understandably the default security model will often be to break and inspect all outbound traffic to ensure that the endpoint is something we want the users to be able to access, and also that there is nothing malicious being bought into the corporate network, or anything exfiltrated.
</span></p>
<p style="text-align: justify"><span style="color: #000000;font-family: Georgia;font-size: 12pt">Whilst necessary, this inspection is computationally expensive and can impact performance, however, when visiting unknown websites this impact is entirely acceptable to the business. With SaaS services like Office 365 this is certainly not the case and can severely impact user experience whilst requiring massive spending to scale up and still not solve all of the issues which arise.
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt"><span style="color: #000000">Here is the question we need to ask ourselves though. Does the same policy which applies to unmanaged and unknown endpoints on the internet, need to apply to known, managed and trusted endpoints used for business-critical services? The answer is hopefully no. Services like Office 365 should be treated somewhere between how you treat internet traffic, and how you treat traffic to your on premises datacentres (which usually has no security applied).</span>
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Where exactly in-between depends on how much you trust the endpoints/service in question but it's certainly worth assessing whether what you're doing at the edge is already done, or can be done in the backend and thus is unnecessary inline where it can cause performance issues.
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Data Loss Prevention can be done in Office 365 itself and AV/anti malware scanning is also done by Office 365 against certain elements so should not be required inline for them. We're not always going to unknown and untrusted/unmanaged endpoints with Office 365 like we are with the internet traffic, we're going to known, business critical, managed and security controlled endpoints. Microsoft <a href="https://www.microsoft.com/en-us/trustcenter">Trust Center</a> holds all the relevant information on how we secure your data in the cloud.
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Therefore, Microsoft strongly recommend that SSL interception/DLP etc is not performed on the core Office 365 traffic. Previously it was very difficult to identify which traffic to apply this advice to as Office 365 consists of various elements, some of which are Microsoft owned and IP provisioned, others (CDN, CRL endpoints etc) are not. As described in part one of this series, Microsoft now mark endpoints in one of three categories "Optimize", "Allow" &amp; "Default" which allows us to selectively treat certain traffic elements in different ways.
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">The advice is that at the very minimum, the 'Optimize' marked endpoints should be sent directly to their destination with no proxy or SSL break and inspect, egressing as close as possible to the user's location, essentially following the principles outlined in this set of posts to the letter.
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Any other endpoints (eg the Allow group) if proxying/interception is done, it should be carefully managed so as not to cause a bottleneck. "Default" marked endpoints can be treated like normal web traffic without issue.
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">This brings us to the next point, what is Microsoft's recommended egress model? How do we recommend you get Office 365 traffic out of the corporate network and to Microsoft? There are essentially three main methods:
</span></p>

<ul>
 	<li><span style="font-family: Georgia;font-size: 12pt">Direct Routing
</span></li>
 	<li><span style="font-family: Georgia;font-size: 12pt">Proxied Access
</span></li>
 	<li><span style="font-family: Georgia;font-size: 12pt">ExpressRoute (which is essentially direct routing via another path)
</span></li>
</ul>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">There are distinct pros and cons to each method and they may or may not be applicable depending on the type of traffic.
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 14pt;text-decoration: underline"><strong>Direct Routing
</strong></span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Direct routing would be similar to that which you have at home, a single TCP session is used to connect to the endpoint with (in most cases) the source IP simply being translated from an internal (e.g. 10.x.x.x) to a publicly routable one on the way out of the managed network. The egress device may also ensure that the destination IP and or port is also allowed. This means the endpoint connected to receives the request from the translated (public) source IP, but the client connects to the public IP address of that endpoint.
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">This method is generally the recommended way to connect Office 365 services if possible.
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt"><strong>Pros:
</strong></span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    Allows direct UDP traffic meaning Skype can work at its best.
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    Generally, no interference with payload at egress meaning optimal connectivity for all services
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    Allows for local egress use in most cases meaning minimal latency to the service front door and Microsoft's global network
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    Minimal work done on traffic means scaling (whilst still necessary for the volume of connections and network address translation) is less demanding
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    Best connection method to Office 365 core endpoints for most customers when ISP routing is optimal
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt"><strong>Cons:
</strong></span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•     It is required to authorize Office 365 URLs/IPs and open required ports on all firewalls used (if controlled egress is desired). These need to be monitored and firewalls updated with changes as missing updates to IP
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt"> ranges can cause connectivity issues. However, the Office 365 web service should allow for easy automation of these updates on supporting network equipment.
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt"> • Having controlled egress by using the IPs for Office 365 also means endpoints where we cannot provide the IPs (such as CDNs, DNS, CRL lookups) have to be routed via another path with URL based or unrestricted access.
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•     Routing to the appropriate egress needs to be managed internally and needs to include external IP address routing (which can be an issue for some customers)
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•     External DNS resolution is required (which can be an issue for some customers)
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•     Devices still need to scale to the increased connection count needed for Office 365 services
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Due to the efficient, low impact manner of egress, allowing connections to flow direct, using the protocol of choice, this method is the recommended method to connect your Office 365 services for the Optimize marked endpoints and ideally the Allow marked endpoints too.
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 14pt;text-decoration: underline"><strong>Proxied Access
</strong></span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">This is a common method used to connect to the internet as it simplifies the connectivity process and allows a centralized device to control access and intercept traffic.
</span></p>
<p style="text-align: justify;margin-left: 14pt"><span style="font-family: Georgia;font-size: 12pt"><strong>Pros:
</strong></span></p>

<ul>
 	<li>
<div style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Easy to Configure to get Office 365 connected
</span></div></li>
 	<li>
<div style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Often the existing internet access method
</span></div></li>
 	<li>
<div style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Small Number of IP addresses for clients to direct traffic to
</span></div></li>
 	<li>
<div style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Uses known ports for easy firewall traversal
</span></div></li>
 	<li>
<div style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">No need to route external IP address on internal network
</span></div></li>
 	<li>
<div style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Easy monitoring/auditing
</span></div></li>
 	<li>
<div style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Provides a Security Barrier between clients and the internet
</span></div></li>
</ul>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Some of these pros mean a proxy is the only way a customer can access the internet without major network redesign work. All Office 365 services will work though a proxy, even Skype for Business, however there are a large number of drawbacks to this method.
</span></p>
<p style="text-align: justify;margin-left: 14pt"><span style="font-size: 12pt"><strong>Cons:
</strong></span></p>

<ul>
 	<li>
<div style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Proxies generally do not handle UDP traffic &amp; Skype traffic is therefore forced over TCP to traverse the proxy.
</span></div></li>
 	<li>
<div style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Skype's coping mechanisms for poor networks are drastically reduced when TCP is used
</span></div></li>
 	<li>
<div style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">The proxy functions can delay frames on their way through adding jitter and latency
</span></div></li>
 	<li>
<div style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Older proxies often struggle to deal with the long lived, high throughput connections SAAS services entail.
</span></div></li>
 	<li>
<div style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Proxies commonly alter TCP level settings which can cause performance issues
</span></div></li>
 	<li>
<div style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">SSL issues can also occur as the proxy is a 'man in the middle'
</span></div></li>
 	<li>
<div style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Often don't scale and were not installed/designed with SaaS services in mind.
</span></div></li>
 	<li><span style="font-family: Georgia;font-size: 12pt">Capacity upgrades to cope with the additional workload SaaS services will add in terms of Ports/Memory/Processing are likely to be very expensive.
</span></li>
 	<li>
<div style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">End result is often poor-quality calls and performance
</span></div></li>
</ul>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">As you can see, there are some considerable downsides to standard proxies when it comes to SaaS services. Skype traffic is highly likely to run into issues via standard on premises proxies due to the use of the non-optimal (for real-time voice/video traffic) TCP protocol (as opposed to UDP) and the processing at the proxy layer is likely to introduce issues such as jitter. Imagine the load the proxy would be under handling thousands of real-time TCP media sessions during an all hands call for example, scaling up to handle this is likely to be very expensive and still run the risk of causing performance issues due to the protocol used. The other thing to bear in mind is that proxies were likely designed for access to transient endpoints, in that a TCP connection will be made to a website, the data will be obtained and then the session closed and the resources (memory, processing, ports) will be returned to the pool. SaaS services tend to work very differently however. Outlook as an example will open multiple TCP connections per users, and sit there all day with them in use, as such the resources aren't returned to the pool as they would be with transient access and again, the devices need upgrading to deal with this extra load. We recommend around 2000-4000 clients per public IP address for network address translation.
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Due to the high risk of these devices causing performance issues due to their design and role being for a different purpose, Microsoft recommends you don't use these types of proxy solutions for the Optimize marked endpoints and ideally the 'Allow' marked ones unless absolutely necessary. If there is no other option, or it is a very strong requirement to use proxies, the following advice should be followed.
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    Ensure the devices are scaled up to cope with SaaS services, in terms of memory, processing and NAT capability
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    Avoid overly centralized proxies which can increase latency
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    Ensure they are in the local region of the client
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    Evaluate Cloud Proxy nodes if the above isn't possible as these often can allow for localized, scalable proxy use
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    Avoid packet inspection (i.e. SSL break &amp; inspect)
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    Ensure all settings are checked and optimized
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    Avoid using Skype for Business through these devices unless they can bypass for UDP
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Whilst not a recommendation for any vendor over another, Microsoft are working with various vendors such as Z-scaler and Bluecoat to help better align cloud proxy products to best practices for Office 365. Zscaler for example have a <a href="https://support.zscaler.com/hc/en-us/articles/206901536-How-do-I-configure-Office-365-support-">button</a> which automatically optimizes Office 365 traffic (e.g. disables SSL offload) for customers who use the service.
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">If a proxy is a requirement for your business, it's worth checking that your current implementation is going to work well with SaaS services like Office 365. If not, then it's worth talking to the vendors you choose to remediate this, around their alignment to the Office 365 (and cloud in general) connectivity principals discussed in this post, and ensure they are followed upon implementation.
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">A final point on proxies, they are absolutely a supported method for our customers to reach Office 365, however they are very likely to provide performance issues if not redesigned &amp; uplifted from their old internet access design, to their new usage with cloud services.
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 14pt;text-decoration: underline"><strong>ExpressRoute
</strong></span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">ExpressRoute is private peering with the Microsoft global network described above. Essentially, it's simply a private network connection from the edge of the customer network to the edge of Microsoft's network (the same network you'd reach over the internet) avoiding the leg which the internet takes in connecting to Microsoft. This private network can carry <em>some</em> elements of Microsoft bound traffic via two <a href="https://docs.microsoft.com/en-us/azure/expressroute/expressroute-circuit-peerings">types</a> of peering:
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">1.    Azure Private – Connecting to virtual networks in Azure (e.g. to private IP addresses on virtual machines)
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">2.    Microsoft Peering – Connecting to Azure public IP ranges and a subset of Office 365 endpoints (the same public endpoints reachable over the internet path)
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">These two types of peering are the recommended connection methods to Azure endpoints, they are relatively easy to configure requiring little change in the corporate network infrastructure. The Office 365 elements of Microsoft peering is the area we're interested in with regards Office 365 connectivity, this type of peering requires authorization from Microsoft to enable, and this is for good reasons, however let's look at the pros of this type of peering first.
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt"><strong>Pros:
</strong></span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    We can provide a <a href="https://azure.microsoft.com/en-us/support/legal/sla/expressroute/v1_2/">99.95%</a> SLA for availability
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    Because it's a dedicated circuit for Microsoft traffic and managed end-to-end, it can provide predictable performance and bandwidth
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    It can provide better QoS <a href="https://support.office.com/en-us/article/ExpressRoute-and-QoS-in-Skype-for-Business-Online-20c654da-30ee-4e4f-a764-8b7d8844431d?ui=en-US&amp;rs=en-US&amp;ad=US">capability</a> than the internet path for Skype (All QoS markings are stripped at the edge over the internet path).
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    It avoids the internet path for the bulk of Office 365 traffic, some organizations have a regulatory requirement for this.
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    If configured such, it allows a customer to bypass network egress equipment doing SSL interception or other behaviour which may cause a bottleneck
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    It allows Skype for Business to use UDP which is the preferred protocol for performance on real-time traffic
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt"><strong>Cons:
</strong></span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    Performant and working internet connectivity is still required for endpoints which cannot use ExpressRoute (e.g. DNS, CDN, CRL checks) As such if this internet pipe is not available, Office 365 is largely inoperable.
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    A well configured internet connection can, in many cases, give a similar, or in some cases, better performance levels (for example if the internet peer point was closer than the nearest ExpressRoute peer <a href="https://docs.microsoft.com/en-us/azure/expressroute/expressroute-locations">point</a>).
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    Often encourages the hub and spoke model for connectivity which runs contrary to the high-level guidance of local connectivity.
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    Often a higher cost of implementation and usage than a standard internet connection. (This isn't always the case depending on the locality and equipment upgrades required)
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    Enabling this type of peering (Microsoft as opposed to Azure) is <span style="text-decoration: underline"><strong>very</strong></span> complex and without what we see as typically 2-6 months of planning and work from a large cross skilled team, will very likely result in an outage of your Office 365 implementation
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    If the direct method is used (i.e. non-proxied to the edge) then external DNS and IP routing needs to be available as with the direct internet path above.
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    It is often possible to resolve performance issues quicker, easier and at a lower cost by isolating the issue and resolving it via using an unhindered, direct internet peered connectivity model or other optimized method.
</span></p>
<p style="text-align: justify;margin-left: 36pt"><span style="font-family: Georgia;font-size: 12pt">•    Investment in your internet egress is likely to be beneficial to other cloud elements outside of Office 365
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">Because of this list of cons, especially the complexity and high risk of outages if not correctly implemented, Microsoft have a review policy of requests to use ExpressRoute for Office 365, this is so we can discuss these pros/cons with the customer and ensure that all parties are aware of the 2-6 months of planning, extra complexity and what ExpressRoute can/cannot deliver. The end goal is that if the customer chooses ExpressRoute they have done so fully armed to make an informed decision that it's the right thing for their business. Also, that they are aware of the guidance to ensure the implementation is a success and is going to deliver the desired benefits before spending the time, money and effort implementing.
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">We have a wealth of technical guidance which covers the <a href="https://support.office.com/en-gb/article/Implementing-ExpressRoute-for-Office-365-77735c9d-8b80-4d2f-890e-a8598547dea6?">implementation</a>, <a href="https://support.office.com/en-gb/article/Routing-with-ExpressRoute-for-Office-365-e1da26c6-2d39-4379-af6f-4da213218408">routing</a>, some training <a href="https://channel9.msdn.com/series/aer">videos</a> and some <a href="https://channel9.msdn.com/Events/Ignite/2016/BRK4000">Ignite</a> 2016 <a href="https://channel9.msdn.com/Events/Ignite/2016/BRK2010">content</a> which should give you a good overview of what is required to implement this type of peering. As you can see, this option is not for everyone, in fact a direct internet path connection is the best for the majority of use cases. However, if you think ExpressRoute might be the right thing for your organization's Office 365 traffic, after reviewing the links here, contact your Microsoft account team for assistance in requesting a review for <a href="https://forms.office.com/Pages/ResponsePage.aspx?id=v4j5cvGGr0GRqy180BHbRyOZxByRF1dLgv7k6ye5z8pUQkdLRTQ5QkcyOTU3VkNEOFdOWk9IRDZTUy4u">approval</a> and we can then work to help you make the right decision for your business.
</span></p>
<p style="text-align: justify"><span style="font-family: Georgia;font-size: 12pt">So, in summary, there are an array of ways to get your traffic to Microsoft's network, direct networking generally works best for the core endpoints to ensure unhindered and quick access, but where you need to use a proxy, ensure it isn't causing a bottleneck to your traffic and follows the principles outlined in this post, and finally ExpressRoute for Office 365 is not simple to implement and isn't for everyone.
</span></p>
&nbsp;]]></content:encoded>
    </item>
    <item>
      <title>Office 365 Connectivity Guidance: Part 3</title>
      <link>https://docs.microsoft.com/archive/blogs/onthewire/office-365-connectivity-guidance-part-3a</link>
      <pubDate>Tue, 18 Jun 2019 11:22:22 GMT</pubDate>
      <dc:creator><![CDATA[Paul Collinge (MSFT)]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/onthewire/?p=3965</guid>
      <description><![CDATA[3. Optimize Route Length &amp; Avoid Network Hairpins 

The third principle is to Optimize Route...]]></description>
      <content:encoded><![CDATA[<p style="text-align: justify"><span style="font-family: Georgia;font-size: 16pt"><strong><a></a>3. <span style="text-decoration: underline"><span style="color: black">Optimize Route Length &amp; Avoid Network Hairpins </span>
</span></strong></span></p>
<p style="text-align: justify"><span style="color: black;font-family: Georgia;font-size: 12pt">The third principle is to Optimize Route length and avoid network hairpins.
</span></p>
<p style="text-align: justify"><span style="color: black;font-family: Georgia;font-size: 12pt">In the majority of cases, the shortest path the Microsoft global network will offer the highest levels of performance to your users for the service. As we discovered in part two, this is due to the global availability of both Microsoft's global network to transport your data in addition to the availability of local service front door elements for Office 365.
</span></p>
<p style="text-align: justify"><span style="color: black;font-family: Georgia;font-size: 12pt">A network hairpin would be we use the WAN for a long distance to route traffic back to a centralized location to egress to the internet there to then route out to an Office 365 endpoint which is likely available near the user. Or similarly, using a VPN for remote users to route traffic back into the corporate network to egress to the internet via the security stack there.
</span></p>
<p style="text-align: justify"><span style="color: black;font-family: Georgia;font-size: 12pt">Take the diagram below as an example. We have hairpins occurring both for the branch office location which hairpins traffic through the Head Office egress, and also the remote users are forced to tunnel in through a VPN concentrator into the corporate network, then out through the standard egress to reach Office 365 services. In both cases, the likelihood is that users in these locations will experience suboptimal performance with the service in addition to considerable costs for Contoso to deliver this model.
</span></p>
<img alt="" src="https://msdnshared.blob.core.windows.net/media/2019/06/061819_1136_Office365Co1.png" /><span style="font-family: Georgia;font-size: 12pt">
</span>
<p style="text-align: justify"><span style="color: black;font-family: Georgia;font-size: 12pt">Even routing Office 365 traffic into Azure (via a proxy hosted there for example) would be considered a hairpin as there is a good chance the endpoint we're talking to may not live within the datacentre but out on the network edge, traffic will then hairpin into Azure and back out to the network edge before having to be routed back into the datacentre again. There are also numerous Office 365 endpoints which do not live in Microsoft's infrastructure such as CDN, CRL, DNS endpoints which will also end up hairpinning.
</span></p>
<p style="text-align: justify"><span style="color: black;font-family: Georgia;font-size: 12pt">Incorrect DNS configuration could also cause a hairpin. As we learnt in the previous page, DNS needs to be resolved locally so as to find a local service front door. Performing DNS lookups at a different location to the egress risks traffic hairpinning to where the DNS call was completed to hit the service front door. As an example, if I egressed in Sydney Australia but DNS was resolved in NYC, my Outlook client would be directed to a CAFE server in the North America region rather than one in Australia.
</span></p>
<p style="text-align: justify"><span style="color: black;font-family: Georgia;font-size: 12pt">Whilst Microsoft's strongly recommended best practice is to send at least the Optimize marked endpoints direct to the service, care should also be taken if choosing a vendor in the cloud based security/network access field if applicable. If this model is in use take great care to ensure your chosen vendor is able to provide infrastructure close to your users. For example, performance is likely to be suboptimal if my cloud proxy vendor's nearest nodes are in Singapore but my users are in Sydney. Also check how well they peer onto Microsoft's infrastructure i.e. that this is done locally to their resources. In essence, it's essential to check how well the provider conforms to the connectivity principles outlined in this article series, for example, how well they allow you to differentiate the Office 365 traffic from normal web traffic? (see part 1).
</span></p>
<p style="text-align: justify"><span style="color: black;font-family: Georgia;font-size: 12pt">Moving on to optimized route length. If we've delivered direct, local egress for our users for their Office 365 traffic, how do we test the route length is optimal and my ISP is peering well with Microsoft's network?
</span></p>
<p style="text-align: justify"><span style="color: black;font-family: Georgia;font-size: 12pt">Using a simple tracert to known endpoints we can look at both the latency and routing path to Microsoft's network. Tracert will only work when there is a direct path to the endpoint, so if on a corporate network where a proxy is used to egress the traffic (or ICMP is blocked) then we'd have to run this action at the edge of the corporate network, in front of, or on the proxy.
</span></p>
<p style="text-align: justify"><span style="color: black;font-family: Georgia;font-size: 12pt">Test endpoints can be as per the following:
</span></p>
<p style="text-align: justify"><span style="color: #333333;font-family: Georgia;font-size: 12pt;text-decoration: underline"><strong>Service: Outlook/Exchange Online
</strong></span></p>

<ul>
 	<li><span style="color: #333333;font-family: Georgia;font-size: 12pt">Endpoint to test: outlook.office365.com
</span></li>
 	<li>
<div><span style="color: #333333;font-family: Georgia;font-size: 12pt"><em>tracert outlook.office365.com</em>
</span></div>
<p style="text-align: justify"></p>
</li>
</ul>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt"> 1 1 ms 1 ms 1 internal router 1 [10.16.9.2]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt"> 2 1 ms 1 ms 1 internal router 2 [10.3.7.17]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt"> 3 3 ms 2 ms 2 internal router 3 [10.3.7.7]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt"> 4 2 ms 2 ms 2 Internal router 4 [10.3.7.12]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt"> 7 3 ms 3 ms 3 ISP router 1 [194.x.x.x]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt"> 8 4 ms 3 ms 5 ISP Router 2 [194.x.x.x]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt"> 10 4 ms 6 ms 4 ms ae26-0.icr01.<span style="background-color: yellow">lon24</span>.ntwk.<span style="background-color: yellow">msn.net</span> [104.44.239.105]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt"> 11 13 ms 13 ms 14 ms be-120-0.ibr02.lon24.ntwk.msn.net [104.44.21.115]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt"> 12 13 ms 13 ms 13 ms be-8-0.ibr02.dub08.ntwk.msn.net [104.44.17.90]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt"> 13 13 ms 13 ms 13 ms ae120-0.icr01.dub08.ntwk.msn.net [104.44.11.86]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt"> 14 12 ms 12 ms 14 ms ae22-0.<span style="background-color: yellow">db3</span>-96c-3a.ntwk.msn.net [104.44.238.38]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">16 17 ms 13 ms 14 ms 104.146.132.25
</span></p>
<p style="text-align: justify"><span style="color: #333333;font-family: Georgia;font-size: 12pt">In the above tracert taken in the UK on a corporate network you see the connectivity hit Microsoft's backbone (<span style="background-color: yellow">msn.net</span>) in <span style="background-color: yellow">LON24 </span>(London) in 4ms, seen in hop 10. So peering here is excellent, and in an expected place. Further we can see the CAFE server we are using at this point in time is in Dublin (db3), seen in hop 14.
</span></p>
<p style="text-align: justify"><span style="color: #333333;font-family: Georgia;font-size: 12pt;text-decoration: underline"><strong>Service: SharePoint/OneDrive for Business
</strong></span></p>

<ul>
 	<li>
<div style="text-align: justify"><span style="color: #333333;font-family: Georgia;font-size: 12pt">Endpoint to test: tenantname.sharepoint.com (eg contoso.sharepoint.com)
</span></div></li>
 	<li>
<div style="text-align: justify"><span style="color: #333333;font-family: Georgia;font-size: 12pt">Tracert <em>contoso</em>.sharepoint.com (changing contoso to your tenant name)
</span></div>
<p style="text-align: justify"></p>
</li>
</ul>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">1 &lt;1 ms &lt;1 ms &lt;1 ms – Local gateway 192.168.1.1
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">4 6 ms 6 ms 6 ms ISP Router 1
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">5 8 ms 6 ms 6 ms ISP Router 2
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">7 12 ms 9 ms 10 ms ISP Router 3
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">8 16 ms 15 ms 9 ms msft-decix-02-<span style="background-color: yellow">dxb30</span>.ntwk.msn.net [185.1.8.32]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">9 12 ms 11 ms 11 ms ae26-0.icr01.dxb20.ntwk.msn.net [104.44.233.49]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">10 40 ms 40 ms 40 ms be-120-0.ibr02.dxb20.ntwk.msn.net [104.44.20.235]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">11 40 ms 39 ms 39 ms be-7-0.ibr02.bom30.ntwk.msn.net [104.44.18.205]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">12 39 ms 44 ms 39 ms ae21-0.<span style="background-color: yellow">bom01</span>-96cbe-1b.ntwk.msn.net [104.44.23.246]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">13 * * * Request timed out.
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">14 * * * Request timed out.
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">15 39 ms 40 ms 39 ms 13.107.136.9
</span></p>
<p style="text-align: justify"><span style="color: #333333;font-family: Georgia;font-size: 12pt">In this example taken in Dubai UAE we see the peering occur on Microsoft's new peering location in Dubai (<span style="background-color: yellow">DXB30</span>) in hop 8. As we don't have a full set of Office 365 services live in the Dubai region at the time of writing, the AFD endpoint being used is bom01 in hop 12 (Mumbai). Again, this peering is in an expected location (see the table in the previous part to see where peering is available).
</span></p>
<p style="text-align: justify"><span style="color: #333333;font-family: Georgia;font-size: 12pt">If we trace to the same endpoint from a machine the UK we see the following:
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">Tracing route to spo-0004.spo-msedge.net [13.107.136.9]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">1 1 ms 1 ms 1 ms network gateway - [192.168.1.1]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">3 16 ms 23 ms 13 ms winn-core-2b-xe-030-0.network.virginmedia.net [62.253.120.137]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">6 25 ms 20 ms 20 ms tcl5-ic-5-ae0-0.network.virginmedia.net [62.254.84.66]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">7 21 ms 19 ms 17 ms ae23-0.<span style="background-color: yellow">lts</span>-96cbe-1b.<span style="background-color: yellow">ntwk.msn.net</span> [207.46.219.212]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">8 22 ms 21 ms 25 ms ae25-0.icr02.<span style="background-color: yellow">lon22</span>.ntwk.msn.net [104.44.239.103]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">9 22 ms 18 ms 20 ms ae28-0.lon04-96cbe-1b.ntwk.msn.net [104.44.239.120]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">10 21 ms 21 ms 21 ms ae20-0.lon21-96cbe-1b.ntwk.msn.net [104.44.238.202]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">13 21 ms 26 ms 23 ms 13.107.136.9
</span></p>
<p style="text-align: justify"><span style="color: #333333;font-family: Georgia;font-size: 12pt">Above you're seeing the ISP peer with Microsoft in London (<span style="background-color: yellow">LTS/LON22</span>) which is also where the AFD endpoint resides. If we trace to the same endpoint from the same location via a different ISP then we also see this ISP peering in <span style="background-color: yellow">London</span>.
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">Tracing route to spo-0004.spo-msedge.net [13.107.136.9]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">1 1 ms 4 ms 3 ms Network Gateway [192.168.1.1]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">4 7 ms 7 ms 7 ms 31.55.186.180
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">5 12 ms 8 ms 8 ms 195.99.127.88
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">6 11 ms 9 ms 8 ms peer2-et0-0-0.slough.ukcore.bt.net [62.172.103.200]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">7 11 ms 9 ms 9 ms 109.159.253.203
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">8 11 ms 10 ms 15 ms ae3-0.<span style="background-color: yellow">lon21</span>-96cbe-1a.ntwk<span style="background-color: yellow">.msn.net</span> [198.206.164.68]
</span></p>
<p style="text-align: justify"><span style="color: #002060;font-size: 9pt">13 9 ms 9 ms 10 ms 13.107.136.9
</span></p>
<p style="text-align: justify"><span style="color: #333333;font-family: Georgia;font-size: 12pt">An important point of note. It shouldn't be expected that the perfect peering location for you is used in every instance, the important thing is that it's in a sensible location. For example, a connection in Berlin in Germany may peer with Microsoft in Frankfurt (despite peering being available in Berlin) as the exact location is down to the ISP's preference and capability. However, an ISP in Berlin should not be peering with Microsoft in NYC for example as this will undoubtedly cause performance issues.
</span></p>
<p style="text-align: justify"><span style="color: #333333;font-family: Georgia"><span style="font-size: 12pt">You'll notice most router names have a local code in them to help us identify them, invariably they are the <a href="https://www.iata.org/publications/Pages/code-search.aspx">IATA location or airport codes</a> for the area. BOM being that for Mumbai airport (Bombay being the old official name for Mumbai)</span><span style="font-size: 16pt">
</span></span></p>
<p style="text-align: justify"><span style="color: #333333;font-family: Georgia;font-size: 12pt;text-decoration: underline"><strong>Service: Teams
</strong></span></p>

<ul>
 	<li>
<div style="text-align: justify"><span style="color: #333333;font-family: Georgia;font-size: 12pt">Endpoint to test: world.tr.teams.microsoft.com
</span></div></li>
 	<li>
<div style="text-align: justify"><span style="color: #333333;font-family: Georgia;font-size: 12pt">Tracert <em>world.tr.teams.microsoft.com</em>
</span></div></li>
</ul>
<p style="text-align: justify"><span style="color: #333333;font-family: Georgia;font-size: 12pt">Again in this trace, as it's taken in the UK, we can see the peering occuring in London (as you'd expect) and the traffic hitting a Teams relay server in London (<span style="background-color: yellow">lon12</span>)
</span></p>
<p style="text-align: justify"><span style="color: #333333;font-size: 9pt">Tracing route to world.tr.teams.microsoft.com [13.107.64.2]
</span></p>
<p style="text-align: justify"><span style="color: #333333;font-size: 9pt"> 1 12 ms 18 ms 5 ms Local Network Gateway [192.168.1.1]
</span></p>
<p style="text-align: justify"><span style="color: #333333;font-size: 9pt"> 3 9 ms 16 ms 16 ms winn-core-2a-xe-133-0.network.virginmedia.net [62.253.121.237]
</span></p>
<p style="text-align: justify"><span style="color: #333333;font-size: 9pt"> 7 33 ms 23 ms 22 ms tcl5-ic-5-ae0-0.network.virginmedia.net [62.254.84.66]
</span></p>
<p style="text-align: justify"><span style="color: #333333;font-size: 9pt"> 8 24 ms 18 ms 22 ms ae23-0.<span style="background-color: yellow">lts</span>-96cbe-1b.<span style="background-color: yellow">ntwk.msn.net </span>[207.46.219.212]
</span></p>
<p style="text-align: justify"><span style="color: #333333;font-size: 9pt"> 9 19 ms 21 ms 19 ms ae25-0.icr02.lon22.ntwk.msn.net [104.44.239.103]
</span></p>
<p style="text-align: justify"><span style="color: #333333;font-size: 9pt"> 10 21 ms 20 ms 21 ms ae28-0.lon04-96cbe-1b.ntwk.msn.net [104.44.239.120]
</span></p>
<p style="text-align: justify"><span style="color: #333333;font-size: 9pt"> 11 22 ms 23 ms 19 ms ae3-0.<span style="background-color: yellow">lon21</span>-96cbe-1a.ntwk.msn.net [198.206.164.68]
</span></p>
<p style="text-align: justify"><span style="color: #333333;font-size: 9pt">14 27 ms 32 ms 25 ms world.tr.teams.microsoft.com [13.107.64.2]
</span></p>
Next Up: <a href="https://blogs.technet.microsoft.com/onthewire/2019/06/18/office-365-connectivity-guidance-part-4-2/">Part 4: Assess bypassing proxies, traffic inspection devices and duplicate security technologies</a>

<a href="https://blogs.technet.microsoft.com/onthewire/2017/05/03/office-365-connectivity-guidance-part-2/">Back</a>]]></content:encoded>
    </item>
    <item>
      <title>Office 365 URL categories to help you optimize the network traffic which really matters</title>
      <link>https://docs.microsoft.com/archive/blogs/onthewire/new-office-365-url-categories-to-help-you-optimize-the-traffic-which-really-matters</link>
      <pubDate>Fri, 06 Apr 2018 15:23:26 GMT</pubDate>
      <dc:creator><![CDATA[Paul Collinge (MSFT)]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/onthewire/?p=3785</guid>
      <description><![CDATA[Updated 21st May April 2019
As part of the improvements Microsoft announced in 2018 to the way the...]]></description>
      <content:encoded><![CDATA[<p style="text-align: justify">Updated 21<sup>st</sup> May April 2019
</p><p style="text-align: justify">As part of the improvements Microsoft <a href="https://techcommunity.microsoft.com/t5/Office-365-Blog/Announcing-Office-365-endpoint-categories-and-Office-365-IP/ba-p/177638">announced</a> in 2018 to the way the required URLs and IPs for Office 365 are published, we have also changed how the URLs are categorized to help customers deliver best practice in terms of connecting to the required endpoints for the service.
</p><p style="text-align: justify">In the old system, URLs are marked "Required" and "Optional" with a very large list of URLs in each category, published via an XML file.  
</p><p style="text-align: justify">Traditionally Microsoft advised that customers optimize connectivity to Office 365 for the "required" endpoints. That often means, not using traditional proxy methods at the network edge due to the bottlenecks which commonly occur at this point. This is often due to the load Office 365 puts on these devices. In addition, the work often done at this layer such as SSL inspection for AV scanning or DLP which is often replicated in the application/service itself when it comes to Office 365 endpoints. Proxying traffic also often means that in most cases, Skype for Business or Teams uses TCP for voice/media calls as opposed to its preferred method of using UDP directly, with a very likely drop in performance and quality. More on the challenges with using traditional proxies for SaaS services like Office 365  can be found in another of my blog <a href="https://blogs.technet.microsoft.com/onthewire/2017/05/03/office-365-connectivity-guidance-part-3/">posts</a>.
</p><p style="text-align: justify">The difficulty with this categorization of the URLs (Required &amp; Optional) is that applying this advice has become increasingly difficult for customers as the Office 365 service has grown. The number of endpoints in the "Required" list is considerable and in addition, some do not reside on Microsoft infrastructure (eg CDNs) which we therefore do not provide IPs for. A customer may therefore understandably want to apply SSL inspection on some of these endpoints due to the number and differing nature of them. It's also hard to correlate which URLs have which security features (such as AV scanning/DLP) applicable to it within the service, and thus don't require it at the network edge. The net result is that often key Office 365 traffic ends up being sent via an unoptimized path and encounters performance issues as a result, or it is a large challenge to optimize the full list of endpoints.
</p><p style="text-align: justify">We therefore set about a piece of work to analyze all the URLs for the service and identify those which <em>really</em> require optimization to enable customers to focus on the traffic which really requires special consideration, i.e. those which are either very high volume in terms of bandwidth/transactions/connection count and thus put heavy load on proxies, or those which are particularly latency sensitive and require the direct path with minimal interference, for example Skype voice traffic.
</p><p style="text-align: justify">This piece of work showed that a very small number actually require the highest levels of optimization, in the order of around 10 endpoints. This small list however accounts for 75-90% of Office 365 Bandwidth, connection and transaction count. These core endpoints are those which will put massive load on traditional proxy infrastructure and/or require that optimized path a direct egress best provides.  
</p><p style="text-align: justify">With this small list in mind, we can now work around the problem with traditional egress models in a much more precise manner, by concentrating on optimizing the URLs which both cause the problem (in terms of load) and also are the biggest victims of it in terms of performance. 
</p><p style="text-align: justify">We have therefore categorized the URLs into the following three categories to help customers deal with the endpoints in specific ways according to the needs of the endpoint and the business. 
</p><p style="text-align: justify">
 </p><ul><li><span style="color:#333333"><strong>Optimize</strong> for a small number of endpoints that require low latency unimpeded connectivity which should bypass proxy servers, network SSL break and inspect devices, and network hairpins.
</span></li><li><span style="color:#333333"><strong>Allow</strong> for a larger number of endpoints that benefit from low latency unimpeded connectivity. Although not expected to cause failures, we also recommend bypassing proxy servers, network SSL break and inspect devices, and network hairpins. Good connectivity to these endpoints is required for Office 365 to operate normally.
</span></li><li><span style="color:#333333"><strong>Default</strong> for other Office 365 endpoints which can be directed to the default internet egress location for the company WAN.
</span></li></ul><p>
 </p><p><span style="color:#333333">Use of these categories, how they simplify connectivity to Office 365, and what actions you can take to make use of them is detailed in <a href="https://support.office.com/en-us/article/office-365-network-connectivity-principles-76e7f232-917a-4b13-8fe2-4f8dbccfe041" target="_blank"><span style="color:#146cac">Office 365 Network Connectivity Principles</span></a>.
</span></p><p>
 </p><p><span style="color:#333333;font-size:13pt;text-decoration:underline"><strong>Optimize Category
</strong></span></p><p>
 </p><p><span style="color:#333333">URLs in the Optimize category all have the following characteristics:
</span></p><p>
 </p><ul><li><span style="color:#333333">Are Microsoft owned and managed endpoints hosted on Microsoft infrastructure. 
</span></li><li><span style="color:#333333">Have IPs provided 
</span></li><li><span style="color:#333333">Are routable via ExpressRoute (If the circuit is authorized for this type of traffic).
</span></li><li><span style="color:#333333">Expected to remain low in number of URLs
</span></li><li><span style="color:#333333">Are High volume and/or latency sensitive 
</span></li><li><span style="color:#333333">Low rate of change to URLs/IPs compare to other two categories 
</span></li></ul><p>
 </p><p><span style="color:#333333">The Optimize list at the time of publishing is outlined below. 
</span></p><p>
 </p><div><table style="border-collapse:collapse" border="0"><colgroup><col style="width:311px" /><col style="width:265px" /><col style="width:1447px" /></colgroup><tbody valign="top"><tr style="height: 11px;background: #e7e6e6"><td style="padding-left: 7px;padding-right: 7px;border-top:  solid 1.0pt;border-left:  solid 1.0pt;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p>Endpoint to Optimize</p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  solid 1.0pt;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p>Port/s</p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  solid 1.0pt;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p>Use</p></td></tr><tr style="height: 11px"><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  solid 1.0pt;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.proofpoint.com%2Fv2%2Furl%3Fu%3Dhttps-3A__outlook.office365.com%26d%3DDwMFAg%26c%3DfpIeS8RwmHkY2r_dFRL5tQ%26r%3D0IIC0oxOP0KJc9J-FLjyDtnUigRj6OMwgEMS3_B70aw%26m%3DtQbhTkEHnQge8KLgc4fwYmiUy1sARtPdqucrYXNRw-Q%26s%3DK2yXsBTva6elLJkSwAmVwR-8pzSQSe3f1n9DoG_vZDs%26e%3D&amp;data=04%7C01%7CGupta.Sachin%40microsoft.com%7C4ae35f5b65af404e463c08d5853c21a3%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636561415688589193%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwifQ%3D%3D%7C-2&amp;sdata=M42HYgm5WVQ5DfAczKl1A4R7yZ56l3akItmSJrYxtGs%3D&amp;reserved=0">https://outlook.office365.com</a></p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p>TCP 443</p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p>This is one of the Core URLs Outlook uses to connect to its Exchange Online server and has high volume of bandwidth usage and connection count. Low network latency is required for online features including: Instant search, Other mailbox calendars, Free / busy lookup, manage rules &amp; alerts, Exchange online archive, Emails departing the outbox.</p></td></tr><tr style="height: 11px"><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  solid 1.0pt;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.proofpoint.com%2Fv2%2Furl%3Fu%3Dhttps-3A__outlook.office.com%26d%3DDwMFAg%26c%3DfpIeS8RwmHkY2r_dFRL5tQ%26r%3D0IIC0oxOP0KJc9J-FLjyDtnUigRj6OMwgEMS3_B70aw%26m%3DtQbhTkEHnQge8KLgc4fwYmiUy1sARtPdqucrYXNRw-Q%26s%3Dwg2FtqMn6DwjAy0okb960lXWwMa8o6q1Znmq5_XqdZI%26e%3D&amp;data=04%7C01%7CGupta.Sachin%40microsoft.com%7C4ae35f5b65af404e463c08d5853c21a3%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636561415688589193%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwifQ%3D%3D%7C-2&amp;sdata=lqnF5GmA08e1pabdoxoT0tDlF8iepLIecYRt5IAOP%2F8%3D&amp;reserved=0">https://outlook.office.com</a></p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p>TCP 443</p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p>This is use for Outlook Online web access to connect to its Exchange Online server and network latency. Connectivity is particularly required for large file upload and download with SharePoint Online.</p></td></tr><tr style="height: 11px"><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  solid 1.0pt;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.proofpoint.com%2Fv2%2Furl%3Fu%3Dhttps-3A__-253ctenant-253e.sharepoint.com%26d%3DDwMFAg%26c%3DfpIeS8RwmHkY2r_dFRL5tQ%26r%3D0IIC0oxOP0KJc9J-FLjyDtnUigRj6OMwgEMS3_B70aw%26m%3DtQbhTkEHnQge8KLgc4fwYmiUy1sARtPdqucrYXNRw-Q%26s%3DUTpWIR7LAxBcvT1sjRYrO9i2VLhdWLbhWZwysAXYy8k%26e%3D&amp;data=04%7C01%7CGupta.Sachin%40microsoft.com%7C4ae35f5b65af404e463c08d5853c21a3%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636561415688589193%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwifQ%3D%3D%7C-2&amp;sdata=X2XUzsGq5lf923AdT8c8pJoQ3SEt6KWG7VpLNd%2FkHZk%3D&amp;reserved=0">https://&lt;tenant&gt;.sharepoint.com</a></p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p>TCP 443</p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p>This is the primary URL for SharePoint Online and has high volume of bandwidth usage. </p></td></tr><tr style="height: 11px"><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  solid 1.0pt;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.proofpoint.com%2Fv2%2Furl%3Fu%3Dhttps-3A__-253ctenant-253e-2Dmy.sharepoint.com%26d%3DDwMFAg%26c%3DfpIeS8RwmHkY2r_dFRL5tQ%26r%3D0IIC0oxOP0KJc9J-FLjyDtnUigRj6OMwgEMS3_B70aw%26m%3DtQbhTkEHnQge8KLgc4fwYmiUy1sARtPdqucrYXNRw-Q%26s%3D5AqjD3iek_7kZAjSDwe12ZJ-eyhwZOGjUIocHHxiHWA%26e%3D&amp;data=04%7C01%7CGupta.Sachin%40microsoft.com%7C4ae35f5b65af404e463c08d5853c21a3%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636561415688589193%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwifQ%3D%3D%7C-2&amp;sdata=xv8ldWpUtyTDA8r8i9SaF86l21fBZ7wUyGjIlm3S%2Fks%3D&amp;reserved=0">https://&lt;tenant&gt;-my.sharepoint.com</a></p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p>TCP 443</p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p>This is the primary URL for OneDrive for Business and has high volume of bandwidth and possibly high connection count from the OneDrive for Business Sync tool.</p></td></tr><tr style="height: 33px"><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  solid 1.0pt;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p>Skype for Business Media IPs (no URL)</p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p>TCP 443 &amp; UDP 3478, 3479, 3480, and 3481</p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p>Relay Discovery allocation and real time traffic (3478), Audio (3479), Video (3480), and Video Screen Sharing (3481). These are the endpoints used for Skype for Business and Microsoft Teams Media traffic (Calls, meetings etc). Most endpoints are provided when the Skype for Business client or the Microsoft Teams client establishes a call (and are contained within the required IPs listed for the service). Skype for Business today requires DNS lookup for *.lync.com for this to work. UDP is required for optimal media quality.
</p><p>  </p></td></tr></tbody></table></div><p>
 </p><p style="text-align: justify">The above (optimize) endpoints will require access to the following IP address ranges:
</p><ul><li><div style="text-align: justify"><a href="https://docs.microsoft.com/en-us/office365/enterprise/urls-and-ip-address-ranges?redirectSourcePath=%252fen-gb%252farticle%252fOffice-365-URLs-and-IP-address-ranges-8548a211-3fe7-47cb-abb1-355ea5aa88a2">Exchange Online</a>
			</div></li><li><div style="text-align: justify"><a href="https://docs.microsoft.com/en-us/office365/enterprise/urls-and-ip-address-ranges?redirectSourcePath=%252fen-gb%252farticle%252fOffice-365-URLs-and-IP-address-ranges-8548a211-3fe7-47cb-abb1-355ea5aa88a2">SharePoint Online</a>
			</div></li><li><div style="text-align: justify"><a href="https://docs.microsoft.com/en-us/office365/enterprise/urls-and-ip-address-ranges?redirectSourcePath=%252fen-gb%252farticle%252fOffice-365-URLs-and-IP-address-ranges-8548a211-3fe7-47cb-abb1-355ea5aa88a2">Skype for business
</a></div></li></ul><p style="text-align: justify">
 </p><p style="text-align: justify">For all customers, the advice is that, for the endpoints noted above, where possible:
</p><ul><li><div style="text-align: justify">If proxies are in use, send the above URLs direct in the PAC file and allow a direct path through a firewall/NAT which has an allow list for the IPs and Ports listed. 
</div></li><li><div style="text-align: justify">Ensure devices and paths handling this traffic can scale to handle the demand in terms of port requirements and bandwidth. 
</div></li><li><div style="text-align: justify">Bypass or whitelist these URLs on network devices which do SSL decryption, DPI or content filtering, or any other interference of the traffic which could delay it. 
</div></li><li><div style="text-align: justify">Look at applying the security elements your require for these endpoints, within the <a href="https://support.office.com/en-us/article/office-365-network-connectivity-principles-76e7f232-917a-4b13-8fe2-4f8dbccfe041">service</a> and thus allow the traffic out of the network without hindrance. 
</div></li><li><div style="text-align: justify">Egress these endpoints as close as possible to the users so the traffic can hit Microsoft's infrastructure locally.
</div></li><li><div style="text-align: justify">For remote users ensure these endpoints are sent direct via split tunnelling if VPN solutions are used
</div></li><li><div style="text-align: justify">Ensure that DNS resolution for these endpoints is done at the same location as the egress path
</div></li></ul><p>The advantage of the above list is we can send a customer's specific, and high-volume OneDrive/SharePoint traffic (tenantname.sharepoint.com &amp; tenantname-my.sharepoint.com) direct, and apply DLP in the service if required, whilst sending any other tenant traffic (*.sharepoint.com) which may be required for sharing/collaboration, via an inspecting proxy.
</p><p style="text-align: justify">Whilst most customers do not require it, if strict control of which tenants are accessible then <a href="https://docs.microsoft.com/en-us/azure/active-directory/active-directory-tenant-restrictions">tenant restrictions</a> can be implemented to control which tenants can be accessed from within the corporate network. 
</p><p style="text-align: justify">By optimizing this list of endpoints, you can ensure that the traffic which is likely to put the most load on your network infrastructure, and/or is latency sensitive is treated in such a way that the service performs at its best, whilst removing the risk of overloading your standard network egress.
</p><p style="text-align: justify">
 </p><p style="text-align: justify"><span style="color:#333333;font-size:13pt;text-decoration:underline"><strong>Allow Category
</strong></span></p><p style="text-align: justify"><span style="color:#2f2f2f">Access to the URLs marked as 'Allow' are required for Office 365 to function, however they are not as sensitive to network performance and latency as those marked as 'Optimize'. The amount of bandwidth these endpoints will consume is a small proportion of the whole figure and also connection counts will be lower than the optimize category. 
</span></p><p style="text-align: justify"><span style="color:#2f2f2f">Allow endpoints have the following characteristics: 
</span></p><ul><li><div style="text-align: justify"><span style="color:#2f2f2f">Are required for the service to function
</span></div></li><li><div style="text-align: justify"><span style="color:#2f2f2f">Are dedicated to Office 365 and hosted in Microsoft datacenters. 
</span></div></li><li><div style="text-align: justify"><span style="color:#2f2f2f">Are not as highly sensitive to network performance as the optimize category
</span></div></li><li><div style="text-align: justify"><span style="color:#2f2f2f">Are not comparatively high bandwidth or connection count endpoints
</span></div></li><li><div style="text-align: justify"><span style="color:#2f2f2f">Higher rate of change than the optimize category
</span></div></li><li><div style="text-align: justify"><span style="color:#2f2f2f">Not all endpoints in this category will have IPs provided 
</span></div></li></ul><p style="text-align: justify">Whilst these endpoints are required for the services to work and aren't as sensitive as the Optimize URLs, they still are critical to the running of the service. A heavy delay to connectivity to one of these endpoints could cause performance issues for users. As such it is recommended that these URLS are optimized as far as possible. 
</p><p style="text-align: justify">Recommended advice in an ideal situation is as follows:
</p><ul><li><div style="text-align: justify"><span style="color:#2f2f2f">If possible, bypass or whitelist <em>Allow</em> endpoints on network devices and services that perform traffic interception, SSL decryption, deep packet inspection and content filtering. If it is not possible to bypass these URLs, ensure the work is as light touch as possible, and on optimized, well scaled devices which minimize any delay.
</span></div></li><li><div style="text-align: justify"><span style="color:#2f2f2f">If proxying this traffic, ensure proxy authentication for these URLs is disabled to remove any delay that may cause. 
</span></div></li><li><div style="text-align: justify"><span style="color:#2f2f2f">If possible, prioritize the evaluation of these endpoints as fully trusted by your network infrastructure and perimeter systems.
</span></div></li><li><div style="text-align: justify">Egress these endpoints as close as possible to the users so the traffic can hit Microsoft's infrastructure locally.<span style="color:#2f2f2f">
				</span></div></li><li><div style="text-align: justify">Ensure that DNS resolution for these endpoints is done at the same location as the egress path<span style="color:#2f2f2f">
				</span></div></li><li><div style="text-align: justify"><span style="color:#2f2f2f">Prioritize these endpoints for SD-WAN integration for direct, minimal latency routing into the nearest Internet peering point of the Microsoft global network.
</span></div><p style="text-align: justify">
 </p><p style="text-align: justify"><span style="color:#333333;font-size:13pt;text-decoration:underline"><strong>Default Category
</strong></span></p><p style="text-align: justify">
 </p><p style="text-align: justify"><span style="color:#333333">This final category represents <span style="color:#2f2f2f">endpoints for Office 365 services and dependencies that do not require any optimization and can be treated by customer networks as normal Internet bound traffic. 
</span></span></p><p style="text-align: justify">
 </p><ul><li><div style="text-align: justify"><span style="color:#2f2f2f">Some endpoints in this category may not be hosted in Microsoft datacenters.</span>
					</div></li><li><div style="text-align: justify">Some endpoints in this category may not have IPs provided for them (so require a proxy or other unrestricted path)
</div></li></ul><p style="text-align: justify">
 </p><p style="text-align: justify">The information discussed above is be available from the new Web Service and I have published a <a href="https://github.com/microsoft/Office365NetworkTools/tree/master/Scripts/Office365URLCategoryPAC">script</a> which will obtain this information for you using the latest data. Microsoft official script information can be found <a href="https://docs.microsoft.com/en-us/office365/enterprise/managing-office-365-endpoints">here</a>.
</p><p style="text-align: justify">
 </p><p>Hopefully this new categorization helps your organisation to simplify the connectivity requirements for the Office 365 service by optimizing the core endpoints which really require it. Please leave your feedback for this feature at the Tech Community <a href="https://techcommunity.microsoft.com/t5/Office-365-Blog/Announcing-Office-365-endpoint-categories-and-Office-365-IP/ba-p/177638">site</a> where we have our official information available. 
</p><p>Paul</p></li></ul>]]></content:encoded>
    </item>
    <item>
      <title>URL &amp; IP Provisioning Service for Office 365</title>
      <link>https://docs.microsoft.com/archive/blogs/onthewire/new-url-ip-provisioning-service-for-office-365</link>
      <pubDate>Fri, 06 Apr 2018 09:22:50 GMT</pubDate>
      <dc:creator><![CDATA[Paul Collinge (MSFT)]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/onthewire/?p=3775</guid>
      <description><![CDATA[Updated 21 May 2019 
In late 2018 Microsoft made some significant updates in the connectivity space...]]></description>
      <content:encoded><![CDATA[<p>Updated 21 May 2019 
</p><p style="text-align: justify">In late 2018 Microsoft made some significant updates in the connectivity space for the Office 365 service. This consists of two elements, a new method to provide the URL &amp; IP requirements for the service which will help our customers manage and automate the requirements, and secondly, as part of this new service, we've added an improved categorization of the URLs required. This second element is designed to help customers optimize traffic which really warrants special treatment, then allowing the rest to go via the standard egress model. This second element is outlined in more detail <a href="https://blogs.technet.microsoft.com/onthewire/2018/04/06/new-office-365-url-categories-to-help-you-optimize-the-traffic-which-really-matters/">here</a>.
</p><p style="text-align: justify">In this post I'll cover this new method for the management of URLs &amp; IPs for the service. 
</p><p style="text-align: justify">Previously, the place to go for connectivity requirements to Office 365 has been our URL &amp; IP <a href="https://aka.ms/o365endpoints">page</a> which consisted of three elements:
</p><ol><li>The web page itself, for human review of the requirements broken down per service
</li><li>The XML file which was used for device configuration
</li><li>The RSS <a href="https://go.microsoft.com/fwlink/p/?linkid=236301">feed</a> for change notification
</li></ol><p style="text-align: justify">We had a challenge with this solution however. As the Office 365 service grew, the number of URLs and IPs required to access the service has obviously increased in line with this growth, also the number of connection options has also increased with the addition of Expressroute. Customers have been reporting to us that they are running into administrative challenges keeping pace with the rate of change in this space and the old solution to provide this data was not meeting their needs as it often required manual management of the changes. 
</p><p style="text-align: justify">Another challenge was around how the URLs need to be handled, some have IPs provided, some don't, some live on Microsoft infrastructure, some don't, some are required, some aren't, some can use ExpressRoute for Office 365, some cannot. The XML file just did not provide the data in a way which allows customers to deal with these attributes as they require, nor automate or script based on this information. 
</p><p style="text-align: justify">We therefore worked to improve how we provide this information to meet our customers' needs moving forward which went <a href="https://techcommunity.microsoft.com/t5/Office-365-Blog/Announcing-Office-365-endpoint-categories-and-Office-365-IP/ba-p/177638">GA in September 2018</a>.
</p><p style="text-align: justify">Data is now provided in JSON format via a Web Service and is tagged with various attributes to allow you to script and manage the data as you see fit, some of these attributes are new, such as the 'Optimize', 'Allow', 'Optional' tags plus Expressroute. (More on this in another blog post <a href="https://blogs.technet.microsoft.com/onthewire/2018/04/06/new-office-365-url-categories-to-help-you-optimize-the-traffic-which-really-matters/">here</a>) 
</p><p style="text-align: justify"><span style="color:#333333">Benefits for administrators from the Office 365 IP Address and URLs web service and the new categories include:
</span></p><ul><li><div style="text-align: justify"><span style="color:#333333">Automation of Office 365 endpoint data and changes publishing
</span></div></li><li><div style="text-align: justify"><span style="color:#333333">System readable data for direct network device integration that is also script friendly
</span></div></li><li><div style="text-align: justify"><span style="color:#333333">Data available in JSON for scripts or CSV format for Excel
</span></div></li><li><div style="text-align: justify"><span style="color:#333333">Includes the new Optimize, Allow, Default categorization of Office 365 endpoints
</span></div></li><li><div style="text-align: justify"><span style="color:#333333">Includes ExpressRoute routable flag for each endpoint
</span></div></li><li><div style="text-align: justify"><span style="color:#333333">Version change notification published alongside the data
</span></div></li><li><div style="text-align: justify"><span style="color:#333333">All provided attributes are supported by owning development teams
</span></div></li></ul><p style="text-align: justify"><span style="color:#333333">Previously, manually created example PAC files were created and published every month, with the new system it is now possible to code this easily. Some example scripts can be obtained <a href="https://github.com/microsoft/Office365NetworkTools/tree/master/Scripts/Office365URLCategoryPAC">here</a>.
</span></p><p style="text-align: justify">The change cadence we aim for with regards Office 365 connectivity requirements is that we provide updates once a month, at the end of the month, with one month's notice and this cadence will continue with the new solution. There can be occasions however where 
</p><p style="text-align: justify">Paul
</p>]]></content:encoded>
    </item>
    <item>
      <title>Office 365 Connectivity Guidance: Part 2</title>
      <link>https://docs.microsoft.com/archive/blogs/onthewire/office-365-connectivity-guidance-part-2</link>
      <pubDate>Wed, 03 May 2017 20:26:58 GMT</pubDate>
      <dc:creator><![CDATA[Paul Collinge (MSFT)]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/onthewire/?p=3595</guid>
      <description><![CDATA[Back to part 1 
		2. Localized network egress as close to the user as possible with matching DNS...]]></description>
      <content:encoded><![CDATA[<p style="text-align: justify"><a href="https://blogs.technet.microsoft.com/onthewire/2017/03/22/__guidance/"><span style="font-size:12pt"><span style="font-family:Georgia">Back</span><span style="font-family:Times New Roman"> to part 1 </span></span></a><span style="font-family:Times New Roman;font-size:12pt">
		</span></p><p style="text-align: justify"><span style="color:#333333;font-family:Georgia;font-size:16pt"><strong>2.<span style="text-decoration:underline"> Localized network egress as close to the user as possible with matching DNS resolution </span></strong></span><span style="font-family:Times New Roman;font-size:12pt">
		</span></p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia">To enable your Office 365 traffic to take full advantage of Microsoft's global network, ideally, we'd want this traffic to egress locally and thus peer onto Microsoft's network as quickly and as close to the user as possible. However, backhauling to a centralized internet egress is common for an enterprise so as to facilitate consolidation of network pipes and security equipment such as firewalls and proxies. This policy is completely understandable for an organization with many sites to manage, and where the majority of business-critical traffic is kept internal to the corporate network. However, for SaaS services like Office 365, local egress becomes vitally important and as the enterprise starts to move to the cloud, it's likely also time to assess whether the current design for accessing the web, is still valid and optimal as we make this transition.</span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia">Using a centralized egress for all office locations in a single small/medium sized country is still a valid approach but we would want to ensure the latency to the egress is as low as possible, and if local egress is possible (even if just for Office 365 traffic) then this approach should be investigated for feasibility.</span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia">For example, Contoso's EMEA corporate HQ in London may host the internet egress for all UK sites, and as long as the connectivity to this egress is optimal, and we've optimized the connectivity from there to Microsoft's network, including peering, then performance should be excellent.</span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia">However, using this egress for the Contoso's EMEA sites in Athens, and Lisbon, may see the latency to the egress be higher than optimal and thus a local egress should be considered at these sites. The same goes for larger countries such as the USA where it would not be advisable to, as an example, backhaul traffic from east coast to west coast to egress.</span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia">Take the example below, Contoso has a branch office in Sydney Australia which uses the MPLS circuit to egress traffic in it's USA based head office. This traffic goes through the on-premises internet proxy and out to the internet in the USA via DLP devices and a firewall. </span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"> 
 </p><p style="text-align: justify"><img src="https://msdnshared.blob.core.windows.net/media/2019/06/061819_1138_Office365Co1.png" alt="" /><span style="font-family:Times New Roman;font-size:12pt">
		</span></p><p style="text-align: justify"> 
 </p><p style="text-align: justify"><span style="font-size:12pt"><span style="font-family:Georgia">Whilst this model may work well for the pre-cloud world, where our services, data and applications sit in the head office site and for general web browsing, it allows Contoso to centralize its network egress and internet security stack. However, for distributed SAAS services and many other cloud services, this model no longer makes sense from a performance, efficiency, or cost perspective. </span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"><span style="font-size:12pt"><span style="font-family:Georgia">So, isn't it better than I backhaul this traffic to the head office on my managed network where I can egress it closer to the tenant location? In most cases no, this is not the optimal approach. Microsoft has a great deal of infrastructure globally which is designed to deliver the highest levels of performance for our services, therefore if we egress Office 365 traffic locally, we can take full advantage of this. </span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"><span style="font-size:12pt"><span style="font-family:Georgia">Firstly, we have Microsoft's global network. </span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia">Did you know Microsoft owns one of the largest networks in the world?  It's one of Microsoft' greatest unsung assets and it's part of Microsoft's multi-Billion Dollar investments to enable a truly global, dynamic cloud infrastructure. This network consists of very high bandwidth, low latency, failover capable links with 100k+ of route miles of privately-owned dark fiber. Multi Terabit connections from the Datacenters to each other, and the internet edge. </span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia">We peer with over 2700 ISPs globally in 190+ points of presence where we peer with ISPs to pull traffic from them onto our own network. This network is optimized to get your traffic to and from its destination as quickly as possible and covers all Microsoft traffic, from Azure to Office 365, to Xbox Live, to Bing. We can also deliver elements of some services from the edge of this network to improve performance (such as OWA) or provide network optimizations to connections to improve performance. You can read more about this network <a href="https://azure.microsoft.com/en-gb/blog/how-microsoft-builds-its-fast-and-reliable-global-network/">here</a> and <a href="https://azure.microsoft.com/en-us/blog/networking-innovations-that-drive-the-cloud-disruption/">here</a>. </span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia">The list of peer points (correct as of June 2019) can be found below and we often have multiple locations in these cities. For a full list and to see which other ISPs have presence in these locations, <a href="https://www.peeringdb.com/asn/8075">peeringdb</a> is a public site where you can look this up, Microsoft's ASN number (network ID) is 8075. </span><span style="font-family:Times New Roman">
			</span></span></p><p> 
 </p><div><table style="border-collapse:collapse" border="0"><colgroup><col style="width:89px" /><col style="width:94px" /><col style="width:88px" /><col style="width:83px" /><col style="width:39px" /><col style="width:39px" /><col style="width:75px" /><col style="width:66px" /></colgroup><tbody valign="top"><tr style="height: 17px;background: #d0cece"><td colspan="2" vAlign="middle" style="padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  solid 0.5pt;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="font-family:Times New Roman;font-size:12pt">City</span></p></td><td colspan="2" vAlign="middle" style="padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  solid 0.5pt;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="font-family:Times New Roman;font-size:12pt">Country</span></p></td><td colspan="3" vAlign="middle" style="padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  solid 0.5pt;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="font-family:Times New Roman;font-size:12pt">City</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  solid 0.5pt;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="font-family:Times New Roman;font-size:12pt">Country</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  solid 0.5pt;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="font-family:Times New Roman;font-size:12pt">City </span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  solid 0.5pt;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="font-family:Times New Roman;font-size:12pt">Country</span></p></td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Brisbane</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Australia</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Hyderabad</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">India</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Zurich</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Switzerland</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Melbourne</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Australia</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Mumbai</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">India</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Taipei</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Taiwan</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Perth</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Australia</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">New Delhi</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">India</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">London</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">UK</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Sydney</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Australia</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Dublin</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Ireland</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Slough</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">UK</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Vienna</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Austria</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Milan</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Italy</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Manchester </span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">UK</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Brussels</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Belgium</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Turin </span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Italy</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="font-family:Segoe UI;font-size:9pt">Dubai </span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="font-family:Times New Roman;font-size:12pt">UAE</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Sao Paulo</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Brazil</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Osaka</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Japan</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Ashburn</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">USA</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Rio de Janeiro </span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Brazil</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Tokyo</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Japan</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Atlanta</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">USA</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Sofia</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Bulgaria</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Kuala Lumpur</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Malaysia</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Boston</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">USA</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Montreal</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Canada</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Mexico City</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Mexico</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Chicago</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">USA</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Toronto</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Canada</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Amsterdam</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Netherlands</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Dallas</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">USA</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Vancouver</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Canada</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Auckland</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">New Zealand</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Denver</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">USA</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Santiago</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Chile</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Wellington</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">New Zealand</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Houston </span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">USA</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Zagreb</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Croatia</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Manila</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Philippines </span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Las Vegas</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">USA</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Prague</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Czech Republic</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Warsaw</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Poland</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Honolulu</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">USA</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Copenhagen</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Denmark</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Lisbon</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Portugal</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Los Angeles</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">USA</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Helsinki</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Finland</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Bucharest</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Romania</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Miami</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">USA</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Marseille</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">France</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Moscow</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Russia</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">New York</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">USA</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Paris</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">France</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Singapore</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Singapore</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Palo Alto</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">USA</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Berlin</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Germany</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Cape Town </span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">South Africa</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Phoenix</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">USA</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Frankfurt</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Germany</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Johannesburg </span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">South Africa</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="font-family:Segoe UI;font-size:9pt">Reston</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="font-family:Segoe UI;font-size:9pt">USA</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Athens</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Greece</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Seoul</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">South Korea</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">San Antonio</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">USA</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Hong Kong</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Hong Kong</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Barcelona</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Spain</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">San Jose</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">USA</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Budapest</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Hungary</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Madrid</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Spain</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Seattle</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">USA</span></p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr><tr style="height: 17px"><td colspan="2" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  solid 0.5pt;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Chennai</span></p></td><td colspan="2" vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">India</span></p></td><td colspan="3" vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Stockholm</span></p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p><span style="color:black;font-family:Segoe UI;font-size:9pt">Sweden</span></p></td><td vAlign="middle" style="background: #b4c6e7;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p>  </p></td><td vAlign="middle" style="background: #e2efd9;padding-top: 1px;padding-left: 7px;padding-bottom: 1px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 0.5pt;border-right:  solid 0.5pt"><p>  </p></td><td vAlign="middle" style="padding-top: 1px;padding-left: 1px;padding-bottom: 1px;padding-right: 1px"> </td></tr></tbody></table></div><p> 
 </p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia">Given the scale of this network, in most metropolitan areas of the globe your traffic should only be on the internet path for a very short period until your ISP hands it to Microsoft's network and we'll look at how you can assess this in the next section. By egressing traffic locally to the user, the traffic uses Microsoft's optimized network to backhaul to the data location for your Office 365 services, both saving money on private backhaul, and also higher performance. </span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia">In addition to this global network, Office 365 services have distributed service front doors around the globe in datacentres and also at the edge of the global network. All designed to deliver high performance to users regardless of where their tenant and data at rest resides. What does this mean? Let's look at the three main services which deliver this benefit in different ways. </span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia;text-decoration:underline"><strong>Exchange Online</strong>
			</span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia">Exchange Online uses local frontend servers referred to as CAFE servers (which is an acronym for Client Access Front End) around the globe. When local egress is performed alongside local DNS resolution, clients will connect to a CAFE server close to where the user is regardless of where the Tenant resides, meaning low latency to the service 'front door'. Mailbox data is then backhauled between the CAFE and the active mailbox server over Microsoft's managed network. </span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia;text-decoration:underline"><strong>SharePoint Online &amp; OneDrive for Business</strong>
			</span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia">SharePoint Online works differently to Exchange Online by using an Anycast IP to find the nearest service front door which normally resides at the edge of the global network. This means SharePoint Online and OneDrive for Business traffic is connected through this distributed service front door where connectivity is done locally then optimized back to wherever the data at rest is. Again, the client should see low latency to the service front door in most scenarios. </span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia;text-decoration:underline"><strong>Teams Media traffic</strong>
			</span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia">Teams media traffic has a complex set of connectivity possibilities depending on the scenario; however, it does have the ability to use a local transport relay server to bounce calls off in some scenarios. Imagine Contoso's tenant is USA based but im based in the Sydney office. I need to have a call with a colleague who is at a customer site in Melbourne. If we are both on different networks, then this call will have to go through a Microsoft relay server (as opposed to peer to peer when on the same network). If we both have local egress on our respective networks, this call can bounce of a local, Australian, Transport Relay server rather than one in the tenant location (USA). </span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"> 
 </p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia">So, by performing local egress we get to utilize local service infrastructure and networks for our cloud services, delivering performance and ultimately cost savings. Therefore, what does a modern, cloud first network look like for Contoso? Well one model we're seeing customers have great success with, is replacing the router at the branch site with an SDWAN device which not only has the MPLS connected, but also local internet circuits. This SDWAN device can then be configured to read the <a href="https://docs.microsoft.com/en-us/Office365/Enterprise/office-365-ip-web-service">Microsoft Rest API</a> for the Office 365 endpoints and selectively route the desired endpoints which we wish to go direct, such as the 'Optimize' marked endpoints via the internet path. Other endpoints such as Windows or Office updates can also be directed out locally in addition to any other known or trusted endpoints such as other cloud services. </span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia">This not only reduces load on the MPLS circuit, often by a significant amount, thus allowing Contoso to perhaps downsize it (and save costs) whilst maintaining performance over it, but it also greatly improves service performance by utilizing Microsoft's local infrastructure to deliver the service. We also see customers achieving great success in switching to using this egress to provide local internet access for the branch by utilizing cloud base secure web gateways (proxies) to provide general web browsing, which is a much more scalable and performant model for the modern world than backhauling to centralized on premises devices. </span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify">
 </p><p style="text-align: justify"><img src="https://msdnshared.blob.core.windows.net/media/2019/06/061819_1138_Office365Co2.png" alt="" /><span style="font-family:Times New Roman;font-size:12pt">
		</span></p><p style="text-align: justify"> 
 </p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia"><strong>Local DNS resolution</strong>
			</span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia">A key element to this second element of the connectivity principles is local DNS resolution. This is because some Microsoft services utilize the location of the DNS resolution to provide local front doors to the respective service. For example, Exchange Online uses Anycast DNS to provide the nearest available CAFE servers to the client doing the lookup. If DNS is not performed near to the egress location then there is a risk the connectivity will be to a non-optimal CAFE server, potentially causing a performance impact. Utilizing a local DNS server also potentially reduces the latency for resolution, further improving performance. SDWAN solutions like the one outlined below should be able to assist in delivering this element of optimization. </span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"><span style="font-size:12pt"><span style="color:#333333;font-family:Georgia">In summary, getting your core Office 365 traffic out locally is the advised methodology which allows Microsoft to backhaul &amp; optimize from a location close to the user. Some consolidation of egress locations makes logical and financial sense, but care should be taken to ensure unnecessary latency isn't added by having the egress too far away from the user location. Tools such as <a href="https://technet.microsoft.com/en-us/sysinternals/psping.aspx">psping</a> can be helpful in accurately measuring latency to the service front doors which we'll look at in the next section. </span><span style="font-family:Times New Roman">
			</span></span></p><p style="text-align: justify"><span style="color:#333333;font-size:12pt"><span style="font-family:Georgia">Next up <a href="https://blogs.technet.microsoft.com/onthewire/2019/06/18/office-365-connectivity-guidance-part-3a/" /></span><span style="font-family:Times New Roman">Part 3: Optimize Route length &amp; Avoid Network Hairpins 
</span></span></p><p style="text-align: justify"><a href="https://blogs.technet.microsoft.com/onthewire/2017/03/22/__guidance/"><span style="font-family:Georgia;font-size:12pt">Back</span></a></p>]]></content:encoded>
    </item>
    <item>
      <title>Office 365 Connectivity Guidance</title>
      <link>https://docs.microsoft.com/archive/blogs/onthewire/__guidance</link>
      <pubDate>Wed, 22 Mar 2017 11:45:27 GMT</pubDate>
      <dc:creator><![CDATA[Paul Collinge (MSFT)]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/onthewire/?p=386</guid>
      <description><![CDATA[Updated 23 May 2019
Whilst our official guidance around Office 365 connectivity can be found at...]]></description>
      <content:encoded><![CDATA[<p><span style="color:#333333;font-family:Georgia;font-size:12pt">Updated 23 May 2019
</span></p><p style="text-align: justify"><span style="font-family:Georgia;font-size:12pt"><span style="color:#333333">Whilst our official guidance around Office 365 connectivity can be found at  <a href="http://aka.ms/tune/">http://aka.ms/tune/</a> and also <a href="https://docs.microsoft.com/en-us/office365/enterprise/set-up-network-for-office-365">here</a></span> it's worth discussing in detail what best practice looks like in this space.<span style="color:#333333">
			</span></span></p><p style="text-align: justify"><span style="color:#333333;font-family:Georgia;font-size:12pt">An area I spend a great deal of time working on, is how to best connect to an Office 365 implementation from a corporate environment. It's an area I speak to customers about on a daily basis and the wealth of options can make it a highly complex area to get right. There isn't a one size fits all model either, what's right for one customer will be the wrong thing for another which makes generalizing advice hard and we need the details to make a correct recommendation.
</span></p><p style="text-align: justify"><span style="color:#333333;font-family:Georgia;font-size:12pt">There is also the issue that (in my view) there isn't enough information out there on Microsoft's global network infrastructure to allow customers to use this information to their advantage. This is something we've aim to redress in Ignite sessions and also here.
</span></p><p style="text-align: justify"><span style="color:#333333;font-family:Georgia;font-size:12pt">The other complexity revolves around the fact the cloud is a moving goal post for connectivity, its very nature means endpoints change regularly, applications may change their connectivity type as improvements are rolled out, new services are added, and so on. As such we need a network design which abstracts the organization from these changes, allowing the fluid nature of the cloud to be invisible to the end user whilst allowing the power of the services to be delivered optimally and enable the organization to consume service optimizations when they are rolled out.
</span></p><p style="text-align: justify"><span style="color:#333333;font-family:Georgia;font-size:12pt">What we need to do therefore is to drive for some standard connectivity principles, and by doing this we can achieve the 'north star' of optimal, flexible and abstract connectivity to our cloud services.
</span></p><p><span style="color:#333333;font-family:Georgia;font-size:12pt">Our official principles can be found <a href="https://docs.microsoft.com/en-us/office365/enterprise/office-365-network-connectivity-principles">here</a>, but I'll dig into them in more detail in this post.
</span></p><p><span style="color:#333333;font-family:Georgia;font-size:12pt">So, what are these standard approach elements from a Microsoft standpoint?
</span></p><ol style="margin-left: 43pt"><li><span style="color:#333333;font-family:Georgia;font-size:12pt"> Differentiate traffic 
</span></li><li><span style="color:#333333;font-family:Georgia;font-size:12pt"> Egress Connections as close to the user as possible
</span></li><li><span style="color:#333333;font-family:Georgia;font-size:12pt"> Optimize Route length and avoid network hairpins
</span></li><li><span style="color:#333333;font-family:Georgia;font-size:12pt"> Assess Network Security
</span></li></ol><p><span style="color:#333333;font-family:Georgia;font-size:12pt">It's a simple list but important to know the detail on how to implement each stage to achieve success.
</span></p><p>
 </p><ol><li><span style="color:#333333;font-family:Georgia;text-decoration:underline"><strong><span style="font-size:14pt">Differentiate Traffic  </span><span style="font-size:12pt">
					</span></strong></span></li></ol><p><span style="color:#333333;font-family:Georgia"><strong><span style="font-size:14pt">
				</span><span style="font-size:12pt">Identify and differentiate Office 365 traffic using Microsoft published endpoints data
</span></strong></span></p><p>
 </p><p style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">As part of the improvements Microsoft <a href="https://techcommunity.microsoft.com/t5/Office-365-Blog/Announcing-Office-365-endpoint-categories-and-Office-365-IP/ba-p/177638">announced</a> in 2018 to the way the required URLs and IPs for Office 365 are published, we have also changed how the URLs are categorized to help customers deliver best practice in terms of connecting to the required endpoints for the service.
</span></p><p style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">In the old system, URLs are marked "Required" and "Optional" with a very large list of URLs in each category, published via an XML file.  
</span></p><p style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">Traditionally Microsoft advised that customers optimize connectivity to Office 365 for the "required" endpoints. That often means, not using traditional proxy methods at the network edge due to the bottlenecks which commonly occur at this point. This is often due to the load Office 365 puts on these devices. In addition, the work often done at this layer such as SSL inspection for AV scanning or DLP which is often replicated in the application/service itself when it comes to Office 365 endpoints. Proxying traffic also often means that in most cases, Skype for Business or Teams uses TCP for voice/media calls as opposed to its preferred method of using UDP directly, with a very likely drop in performance and quality. More on the challenges with using traditional proxies for SaaS services like Office 365  can be found in another of my blog <a href="https://blogs.technet.microsoft.com/onthewire/2017/05/03/office-365-connectivity-guidance-part-3/">posts</a>.
</span></p><p style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">The difficulty with this categorization model for the URLs (Required &amp; Optional) is that applying this advice has become increasingly difficult for customers as the Office 365 service has grown. The number of endpoints in the "Required" list is considerable and in addition, some do not reside on Microsoft infrastructure (eg CDNs) which we therefore do not provide IPs for. A customer may therefore understandably want to apply SSL inspection on some of these endpoints due to the number and differing nature of them. It's also hard to correlate which URLs have which security features (such as AV scanning/DLP) applicable to it within the service, and thus don't require it at the network edge. The net result is that often key Office 365 traffic ends up being sent via an unoptimized path and encounters performance issues as a result, or it is a large challenge to optimize the full list of endpoints.
</span></p><p style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">We therefore set about a piece of work to analyze all the URLs for the service and identify those which <em>really</em> require optimization to enable customers to focus on the traffic which really requires special consideration, i.e. those which are either very high volume in terms of bandwidth/transactions/connection count and thus put heavy load on proxies, or those which are particularly latency sensitive and require the direct path with minimal interference, for example Skype/Teams voice &amp; video traffic.
</span></p><p style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">This piece of work showed that if we concentrate on a very small number of endpoints and apply the highest levels of optimization then we have an enormous amount of impact on our Office 365 performance. This small list however accounts for 75-90% of Office 365 Bandwidth, connection and transaction count. These core endpoints are those which will put massive load on traditional proxy infrastructure and/or require that optimized path a direct egress best provides.  
</span></p><p style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">With this small list in mind, we can now work around the problem with traditional egress models in a much more precise manner, by concentrating on optimizing the URLs which both cause the problem (in terms of load) and also are the biggest victims of it in terms of performance. 
</span></p><p style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">We have therefore categorized the URLs into the following three categories to help customers deal with the endpoints in specific ways according to the needs of the endpoint and the business. 
</span></p><p style="text-align: justify">
 </p><ul><li><span style="color:#333333;font-family:Georgia;font-size:12pt"><strong>Optimize</strong> for a small number of endpoints that require low latency unimpeded connectivity which should bypass proxy servers, network SSL break and inspect devices, and network hairpins.
</span></li><li><span style="color:#333333;font-family:Georgia;font-size:12pt"><strong>Allow</strong> for a larger number of endpoints that benefit from low latency unimpeded connectivity. Although not expected to cause failures, we also recommend bypassing proxy servers, network SSL break and inspect devices, and network hairpins. Good connectivity to these endpoints is required for Office 365 to operate normally.
</span></li><li><span style="color:#333333;font-family:Georgia;font-size:12pt"><strong>Default</strong> for other Office 365 endpoints which can be directed to the default internet egress location for the company WAN.
</span></li></ul><p>
 </p><p><span style="color:#333333;font-family:Georgia;font-size:13pt;text-decoration:underline"><strong>Optimize Category
</strong></span></p><p>
 </p><p><span style="color:#333333;font-family:Georgia;font-size:12pt">URLs in the Optimize category all have the following characteristics:
</span></p><p>
 </p><ul><li><span style="color:#333333;font-family:Georgia;font-size:12pt">Are Microsoft owned and managed endpoints hosted on Microsoft infrastructure. 
</span></li><li><span style="color:#333333;font-family:Georgia;font-size:12pt">Have IPs provided 
</span></li><li><span style="color:#333333;font-family:Georgia;font-size:12pt">Are routable via ExpressRoute (If the circuit is authorized for this type of traffic).
</span></li><li><span style="color:#333333;font-family:Georgia;font-size:12pt">Low rate of change to URLs/IPs compare to other two categories 
</span></li><li><span style="color:#333333;font-family:Georgia;font-size:12pt">Expected to remain low in number of URLs
</span></li><li><span style="color:#333333;font-family:Georgia;font-size:12pt">Are High volume and/or latency sensitive 
</span></li></ul><p>
 </p><p><span style="color:#333333;font-family:Georgia;font-size:12pt">The Optimize list at the time of publishing is outlined below. 
</span></p><p>
 </p><div><table style="border-collapse:collapse" border="0"><colgroup><col style="width:311px" /><col style="width:151px" /><col style="width:1560px" /></colgroup><tbody valign="top"><tr style="height: 11px;background: #e7e6e6"><td style="padding-left: 7px;padding-right: 7px;border-top:  solid 1.0pt;border-left:  solid 1.0pt;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><span style="font-family:Georgia;font-size:12pt">Endpoint to Optimize</span></p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  solid 1.0pt;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><span style="font-family:Georgia;font-size:12pt">Port/s</span></p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  solid 1.0pt;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><span style="font-family:Georgia;font-size:12pt">Use</span></p></td></tr><tr style="height: 11px"><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  solid 1.0pt;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.proofpoint.com%2Fv2%2Furl%3Fu%3Dhttps-3A__outlook.office365.com%26d%3DDwMFAg%26c%3DfpIeS8RwmHkY2r_dFRL5tQ%26r%3D0IIC0oxOP0KJc9J-FLjyDtnUigRj6OMwgEMS3_B70aw%26m%3DtQbhTkEHnQge8KLgc4fwYmiUy1sARtPdqucrYXNRw-Q%26s%3DK2yXsBTva6elLJkSwAmVwR-8pzSQSe3f1n9DoG_vZDs%26e%3D&amp;data=04%7C01%7CGupta.Sachin%40microsoft.com%7C4ae35f5b65af404e463c08d5853c21a3%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636561415688589193%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwifQ%3D%3D%7C-2&amp;sdata=M42HYgm5WVQ5DfAczKl1A4R7yZ56l3akItmSJrYxtGs%3D&amp;reserved=0"><span style="font-family:Georgia;font-size:12pt">https://outlook.office365.com</span></a></p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><span style="font-family:Georgia;font-size:12pt">TCP 443</span></p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><span style="font-family:Georgia;font-size:12pt">This is one of the Core URLs Outlook uses to connect to its Exchange Online server and has high volume of bandwidth usage and connection count. Low network latency is required for online features including: Instant search, Other mailbox calendars, Free / busy lookup, manage rules &amp; alerts, Exchange online archive, Emails departing the outbox.</span></p></td></tr><tr style="height: 11px"><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  solid 1.0pt;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.proofpoint.com%2Fv2%2Furl%3Fu%3Dhttps-3A__outlook.office.com%26d%3DDwMFAg%26c%3DfpIeS8RwmHkY2r_dFRL5tQ%26r%3D0IIC0oxOP0KJc9J-FLjyDtnUigRj6OMwgEMS3_B70aw%26m%3DtQbhTkEHnQge8KLgc4fwYmiUy1sARtPdqucrYXNRw-Q%26s%3Dwg2FtqMn6DwjAy0okb960lXWwMa8o6q1Znmq5_XqdZI%26e%3D&amp;data=04%7C01%7CGupta.Sachin%40microsoft.com%7C4ae35f5b65af404e463c08d5853c21a3%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636561415688589193%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwifQ%3D%3D%7C-2&amp;sdata=lqnF5GmA08e1pabdoxoT0tDlF8iepLIecYRt5IAOP%2F8%3D&amp;reserved=0"><span style="font-family:Georgia;font-size:12pt">https://outlook.office.com</span></a></p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><span style="font-family:Georgia;font-size:12pt">TCP 443</span></p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><span style="font-family:Georgia;font-size:12pt">This is use for Outlook Online web access to connect to its Exchange Online server and network latency. Connectivity is particularly required for large file upload and download with SharePoint Online.</span></p></td></tr><tr style="height: 11px"><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  solid 1.0pt;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.proofpoint.com%2Fv2%2Furl%3Fu%3Dhttps-3A__-253ctenant-253e.sharepoint.com%26d%3DDwMFAg%26c%3DfpIeS8RwmHkY2r_dFRL5tQ%26r%3D0IIC0oxOP0KJc9J-FLjyDtnUigRj6OMwgEMS3_B70aw%26m%3DtQbhTkEHnQge8KLgc4fwYmiUy1sARtPdqucrYXNRw-Q%26s%3DUTpWIR7LAxBcvT1sjRYrO9i2VLhdWLbhWZwysAXYy8k%26e%3D&amp;data=04%7C01%7CGupta.Sachin%40microsoft.com%7C4ae35f5b65af404e463c08d5853c21a3%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636561415688589193%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwifQ%3D%3D%7C-2&amp;sdata=X2XUzsGq5lf923AdT8c8pJoQ3SEt6KWG7VpLNd%2FkHZk%3D&amp;reserved=0"><span style="font-family:Georgia;font-size:12pt">https://&lt;tenant&gt;.sharepoint.com</span></a></p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><span style="font-family:Georgia;font-size:12pt">TCP 443</span></p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><span style="font-family:Georgia;font-size:12pt">This is the primary URL for SharePoint Online and has high volume of bandwidth usage. </span></p></td></tr><tr style="height: 11px"><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  solid 1.0pt;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.proofpoint.com%2Fv2%2Furl%3Fu%3Dhttps-3A__-253ctenant-253e-2Dmy.sharepoint.com%26d%3DDwMFAg%26c%3DfpIeS8RwmHkY2r_dFRL5tQ%26r%3D0IIC0oxOP0KJc9J-FLjyDtnUigRj6OMwgEMS3_B70aw%26m%3DtQbhTkEHnQge8KLgc4fwYmiUy1sARtPdqucrYXNRw-Q%26s%3D5AqjD3iek_7kZAjSDwe12ZJ-eyhwZOGjUIocHHxiHWA%26e%3D&amp;data=04%7C01%7CGupta.Sachin%40microsoft.com%7C4ae35f5b65af404e463c08d5853c21a3%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636561415688589193%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwifQ%3D%3D%7C-2&amp;sdata=xv8ldWpUtyTDA8r8i9SaF86l21fBZ7wUyGjIlm3S%2Fks%3D&amp;reserved=0"><span style="font-family:Georgia;font-size:12pt">https://&lt;tenant&gt;-my.sharepoint.com</span></a></p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><span style="font-family:Georgia;font-size:12pt">TCP 443</span></p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><span style="font-family:Georgia;font-size:12pt">This is the primary URL for OneDrive for Business and has high volume of bandwidth and possibly high connection count from the OneDrive for Business Sync tool.</span></p></td></tr><tr style="height: 33px"><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  solid 1.0pt;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><span style="font-family:Georgia;font-size:12pt">Skype for Business Media IPs (no URL)</span></p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><span style="font-family:Georgia;font-size:12pt">TCP 443 &amp; UDP 3478, 3479, 3480, and 3481</span></p></td><td style="padding-left: 7px;padding-right: 7px;border-top:  none;border-left:  none;border-bottom:  solid 1.0pt;border-right:  solid 1.0pt"><p><span style="font-family:Georgia;font-size:12pt">Relay Discovery allocation and real time traffic (3478), Audio (3479), Video (3480), and Video Screen Sharing (3481). These are the endpoints used for Skype for Business and Microsoft Teams Media traffic (Calls, meetings etc). Most endpoints are provided when the Skype for Business client or the Microsoft Teams client establishes a call (and are contained within the required IPs listed for the service). Skype for Business today requires DNS lookup for *.lync.com for this to work. UDP is required for optimal media quality.
</span></p><p><span style="font-family:Georgia;font-size:12pt"> </span> </p></td></tr></tbody></table></div><p>
 </p><p style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">The above (optimize) endpoints will require access to the following IP address ranges:
</span></p><ul><li><div style="text-align: justify"><a href="https://docs.microsoft.com/en-us/office365/enterprise/urls-and-ip-address-ranges?redirectSourcePath=%252fen-gb%252farticle%252fOffice-365-URLs-and-IP-address-ranges-8548a211-3fe7-47cb-abb1-355ea5aa88a2"><span style="font-family:Georgia;font-size:12pt">Exchange Online</span></a><span style="font-family:Georgia;font-size:12pt">
				</span></div></li><li><div style="text-align: justify"><a href="https://docs.microsoft.com/en-us/office365/enterprise/urls-and-ip-address-ranges?redirectSourcePath=%252fen-gb%252farticle%252fOffice-365-URLs-and-IP-address-ranges-8548a211-3fe7-47cb-abb1-355ea5aa88a2"><span style="font-family:Georgia;font-size:12pt">SharePoint Online</span></a><span style="font-family:Georgia;font-size:12pt">
				</span></div></li><li><div style="text-align: justify"><a href="https://docs.microsoft.com/en-us/office365/enterprise/urls-and-ip-address-ranges?redirectSourcePath=%252fen-gb%252farticle%252fOffice-365-URLs-and-IP-address-ranges-8548a211-3fe7-47cb-abb1-355ea5aa88a2"><span style="font-family:Georgia;font-size:12pt">Skype for business
</span></a></div></li></ul><p style="text-align: justify">
 </p><p style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">For all customers, the advice is that, for the endpoints noted above, where possible:
</span></p><ul><li><div style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">If proxies are in use, send the above URLs direct in the PAC file and allow a direct path through a firewall/NAT which has an allow list for the IPs and Ports listed. 
</span></div></li><li><div style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">Ensure devices and paths handling this traffic can scale to handle the demand in terms of port requirements and bandwidth. 
</span></div></li><li><div style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">Bypass or whitelist these URLs on network devices which do SSL decryption, DPI or content filtering, or any other interference of the traffic which could delay it. 
</span></div></li><li><div style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">Look at applying the security elements your require for these endpoints, within the <a href="https://support.office.com/en-us/article/office-365-network-connectivity-principles-76e7f232-917a-4b13-8fe2-4f8dbccfe041">service</a> and thus allow the traffic out of the network without hindrance. 
</span></div></li><li><div style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">Egress these endpoints as close as possible to the users so the traffic can hit Microsoft's infrastructure locally.
</span></div></li><li><div style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">For remote users ensure these endpoints are sent direct via split tunnelling if VPN solutions are used
</span></div></li><li><div style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">Ensure that DNS resolution for these endpoints is done at the same location as the egress path
</span></div></li></ul><p><span style="font-family:Georgia;font-size:12pt">The advantage of the above list is we can send a customer's specific, and high-volume OneDrive/SharePoint traffic (tenantname.sharepoint.com &amp; tenantname-my.sharepoint.com) direct, and apply DLP in the service if required, whilst sending any other tenant traffic (*.sharepoint.com) which may be required for sharing/collaboration, via an inspecting proxy.
</span></p><p style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">Whilst most customers do not require it, if strict control of which tenants are accessible then <a href="https://docs.microsoft.com/en-us/azure/active-directory/active-directory-tenant-restrictions">tenant restrictions</a> can be implemented to control which tenants can be accessed from within the corporate network. 
</span></p><p style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">By optimizing this list of endpoints, you can ensure that the traffic which is likely to put the most load on your network infrastructure, and/or is latency sensitive is treated in such a way that the service performs at its best, whilst removing the risk of overloading your standard network egress.
</span></p><p style="text-align: justify">
 </p><p style="text-align: justify"><span style="color:#333333;font-family:Georgia;font-size:13pt;text-decoration:underline"><strong>Allow Category
</strong></span></p><p style="text-align: justify"><span style="color:#2f2f2f;font-family:Georgia;font-size:12pt">Access to the URLs marked as 'Allow' are required for Office 365 to function, however they are not as sensitive to network performance and latency as those marked as 'Optimize'. The amount of bandwidth these endpoints will consume is a small proportion of the whole figure and also connection counts will be lower than the optimize category. 
</span></p><p style="text-align: justify"><span style="color:#2f2f2f;font-family:Georgia;font-size:12pt">Allow endpoints have the following characteristics: 
</span></p><ul><li><div style="text-align: justify"><span style="color:#2f2f2f;font-family:Georgia;font-size:12pt">Are required for the service to function
</span></div></li><li><div style="text-align: justify"><span style="color:#2f2f2f;font-family:Georgia;font-size:12pt">Are dedicated to Office 365 and hosted in Microsoft datacenters. 
</span></div></li><li><div style="text-align: justify"><span style="color:#2f2f2f;font-family:Georgia;font-size:12pt">Are not as highly sensitive to network performance as the optimize category
</span></div></li><li><div style="text-align: justify"><span style="color:#2f2f2f;font-family:Georgia;font-size:12pt">Are not comparatively high bandwidth or connection count endpoints
</span></div></li><li><div style="text-align: justify"><span style="color:#2f2f2f;font-family:Georgia;font-size:12pt">Higher rate of change than the optimize category
</span></div></li><li><div style="text-align: justify"><span style="color:#2f2f2f;font-family:Georgia;font-size:12pt">Not all endpoints in this category will have IPs provided 
</span></div></li></ul><p style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">Whilst these endpoints are required for the services to work and aren't as sensitive as the Optimize URLs, they still are critical to the running of the service. A heavy delay to connectivity to one of these endpoints could cause performance issues for users. As such it is recommended that these URLS are optimized as far as possible. 
</span></p><p style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">Recommended advice in an ideal situation is as follows:
</span></p><ul><li><div style="text-align: justify"><span style="color:#2f2f2f;font-family:Georgia;font-size:12pt">If possible, bypass or whitelist <em>Allow</em> endpoints on network devices and services that perform traffic interception, SSL decryption, deep packet inspection and content filtering. If it is not possible to bypass these URLs, ensure the work is as light touch as possible, and on optimized, well scaled devices which minimize any delay.
</span></div></li><li><div style="text-align: justify"><span style="color:#2f2f2f;font-family:Georgia;font-size:12pt">If proxying this traffic, ensure proxy authentication for these URLs is disabled to remove any delay that may cause. 
</span></div></li><li><div style="text-align: justify"><span style="color:#2f2f2f;font-family:Georgia;font-size:12pt">If possible, prioritize the evaluation of these endpoints as fully trusted by your network infrastructure and perimeter systems.
</span></div></li><li><div style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">Egress these endpoints as close as possible to the users so the traffic can hit Microsoft's infrastructure locally.<span style="color:#2f2f2f">
					</span></span></div></li><li><div style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">Ensure that DNS resolution for these endpoints is done at the same location as the egress path<span style="color:#2f2f2f">
					</span></span></div></li><li><div style="text-align: justify"><span style="color:#2f2f2f;font-family:Georgia;font-size:12pt">Prioritize these endpoints for SD-WAN integration for direct, minimal latency routing into the nearest Internet peering point of the Microsoft global network.
</span></div><p style="text-align: justify">
 </p><p style="text-align: justify"><span style="color:#333333;font-family:Georgia;font-size:13pt;text-decoration:underline"><strong>Default Category
</strong></span></p><p style="text-align: justify">
 </p><p style="text-align: justify"><span style="color:#333333;font-family:Georgia;font-size:12pt">This final category represents <span style="color:#2f2f2f">endpoints for Office 365 services and dependencies that do not require any optimization and can be treated by customer networks as normal Internet bound traffic. 
</span></span></p><p style="text-align: justify">
 </p><ul><li><div style="text-align: justify"><span style="font-family:Georgia;font-size:12pt"><span style="color:#2f2f2f">Some endpoints in this category may not be hosted in Microsoft datacenters.</span>
						</span></div></li><li><div style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">Some endpoints in this category may not have IPs provided for them (so require a proxy or other unrestricted path)
</span></div></li><li><div style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">If these endpoints are not accessible, the services themselves will work generally, however certain elements will stop working. Eg help functions
</span></div></li></ul><p style="text-align: justify">
 </p><p style="text-align: justify"><span style="font-family:Georgia;font-size:12pt">The information discussed above is be available from the new Web Service and I have published a <a href="https://github.com/microsoft/Office365NetworkTools/tree/master/Scripts/Office365URLCategoryPAC">script</a> which will obtain this information for you using the latest data. Microsoft official script information can be found <a href="https://docs.microsoft.com/en-us/office365/enterprise/managing-office-365-endpoints">here</a>.
</span></p><p><span style="font-family:Georgia"><span style="font-size:12pt">
					</span><span style="color:#333333">Next up –<a href="https://blogs.technet.microsoft.com/onthewire/2017/05/03/office-365-connectivity-guidance-part-2/"> Part 2 Network Egress as close to the user as possible</a></span><span style="font-size:12pt">
					</span></span></p></li></ul>]]></content:encoded>
    </item>
    <item>
      <title>HTTP Flood Mitigation causing slow Exchange Mailbox Migrations to Office 365</title>
      <link>https://docs.microsoft.com/archive/blogs/onthewire/http-flood-mitigation-causing-slow-exchange-mailbox-migrations-to-office-365</link>
      <pubDate>Wed, 27 May 2015 04:07:27 GMT</pubDate>
      <dc:creator><![CDATA[Paul Collinge (MSFT)]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/onthewire/2015/05/27/http-flood-mitigation-causing-slow-exchange-mailbox-migrations-to-office-365/</guid>
      <description><![CDATA[It&#39;s been a while since I&#39;ve updated this blog as I&#39;ve been busy rolling out content...]]></description>
      <content:encoded><![CDATA[<p style="text-align:justify;"> It&#39;s been a while since I&#39;ve updated this blog as I&#39;ve been busy rolling out content internally in Microsoft to help our customers connect to our cloud services. I do have some new tips around checking routing and ISP performance that I&#39;ll write up soon and publish.
</p><p style="text-align:justify;">However, my colleagues have run into an issue with multiple customers which causes mailbox migrations to Office 365 to be very slow or to fail completely which is very difficult to diagnose and as such I thought I&#39;d share in the hope it helps some of you.
</p><p style="text-align:justify;">We&#39;ve had numerous issues with mailbox migrations running slower than they should, network checks show good bandwidth, low latency, TCP Window Scaling enabled etc etc but still no joy. Errors such as <span style="color:#002060;">&quot;Transient error CommunicationErrorTransientException has occurred. The system will retry&quot;. </span>Or some other timeout errors may also occur.
</p><p style="text-align:justify;">My colleagues Andres Canello and Roshan Padmanabhan have bottomed out this issue which is caused by a Denial of Service protection feature on many web egress devices such as proxies and firewalls called HTTP Flood Mitigation.
</p><p style="text-align:justify;">This security feature is designed to minimize multiple HTTP requests from the same source IP, during mailbox migration O365 will send many HTTP connection requests to the MRS endpoint as it goes about its business. Customers normally publish their MRS endpoint using a reverse proxy (for example TMG Server) and HTTP flood mitigation is enabled by default on TMG which is throttling the number of connections that can pass through it per minute, ultimately slowing or causing the migrations to fail.
</p><p style="text-align:justify;">For TMG you can disable this feature or, ideally add IP exceptions for O365 <a href="https://support.office.com/en-us/article/Office-365-URLs-and-IP-address-ranges-8548a211-3fe7-47cb-abb1-355ea5aa88a2?ui=en-US&amp;rs=en-US&amp;ad=US">IP ranges</a> to ensure this restriction is not applied for the mailbox migration traffic. However, given the enormity of our IP ranges for Office 365 it may be easier just to disable this for the duration of the migrations.
</p><p>
 </p><p><a href="http://community.office365.com/cfs-file.ashx/__key/communityserver-components-userfiles/00-00-00-26-97-Attached+Files/6165.2.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/metablogapi/052715_1108_HTTPFloodMi1.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59-metablogapi/052715_5F00_1108_5F00_HTTPFloodMi1.png" alt=" " border="0" /></a><span style="font-size:16pt;">
		</span></p><p>There are numerous settings which can affect this but the main one to be concerned with is HTTP requests per minute per IP Address.
</p><p><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/metablogapi/052715_1108_HTTPFloodMi2.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59-metablogapi/052715_5F00_1108_5F00_HTTPFloodMi2.png" alt=" " /><span style="font-size:16pt;">
		</span></p><p>Refer this link for more information on how to do this in TMG: <a href="http://community.office365.com/en-us/w/exchange/office-365-move-mailbox-fails-with-transient-exception.aspx">http://community.office365.com/en-us/w/exchange/office-365-move-mailbox-fails-with-transient-exception.aspx</a>
	</p><p>You can read more about Flood Mitigation here <a href="http://technet.microsoft.com/en-us/library/cc995196.aspx"><span style="color:blue;">http://technet.microsoft.com/en-us/library/cc995196.aspx</span></a>
	</p><p style="text-align:justify;">It&#39;s also possible that you have similar capabilities on any other proxy or firewall device that&#39;s being used to publish your MRS endpoint so, even if you are not using TMG it&#39;s well worth checking if you have any DoS type capability on your proxy or firewall preventing multiple HTTP Requests from the same source IP. 
</p><p style="text-align:justify;">This may not be called HTTP Flood Mitigation but will refer to HTTP or TCP throttling or DOS protection. QOS devices could also do something similar to limit the amount a single TCP session can use.
</p><p style="text-align:justify;">Hope this helps and Kudos to Andres &amp; Roshan for their work bottoming this one out.
</p>]]></content:encoded>
    </item>
    <item>
      <title>How to analyse Application level performance for Outlook and SharePoint online</title>
      <link>https://docs.microsoft.com/archive/blogs/onthewire/how-to-analyse-application-level-performance-for-outlook-and-sharepoint-online</link>
      <pubDate>Tue, 08 Jul 2014 08:33:33 GMT</pubDate>
      <dc:creator><![CDATA[Paul Collinge (MSFT)]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/onthewire/2014/07/08/how-to-analyse-application-level-performance-for-outlook-and-sharepoint-online/</guid>
      <description><![CDATA[If we&#39;ve stepped through all the network level checks and all looks good from that perspective,...]]></description>
      <content:encoded><![CDATA[<p style="text-align:justify;">If we&#39;ve stepped through all the network level checks and all looks good from that perspective, then we need to move up the stack to the application itself and see if something above the network is causing performance issues.
</p><p style="text-align:justify;">This can prove tricky with Office 365 as the information is almost always encrypted within an SSL session, however there are a number of methods we can use to look at how the application itself is performing and how long the requests we send to the remote server are taking to get a response. From this we can see if we&#39;ve got a problem with the client or on the Datacenter side.
</p><p style="text-align:justify;">When we&#39;re working on-prem this is a lot easier. We can normally match up a request to a response as long as it&#39;s in the clear by using a network packet sniffer such as <a href="http://www.microsoft.com/en-us/download/details.aspx?id=4865">Netmon</a> or <a href="http://www.wireshark.org/">WireShark</a>, so we&#39;ll be able to see an RPC call to its response in Outlook and a HTTP GET to its response in SharePoint. When these requests are encrypted then that becomes impossible. So how do we do it? Well the methods vary with each product:
</p><p style="text-align:justify;">I&#39;ve tried my best to make the images viewable without clicking out, any smaller ones should have a link to view full page if you need though.
</p><p><span style="font-size:14pt;text-decoration:underline;"><strong>Outlook
</strong></span></p><p style="text-align:justify;">Outlook performance can be a tricky one at the best of times, especially so when using HTTPS.
</p><p style="text-align:justify;">We can however use the inbuilt connection status tool to look at the performance. Ctrl + Right click the Outlook icon in the bottom right of your task bar and click on &#39;Connection Status&#39;. This will give you a whole heap of information on Outlook&#39;s connectivity.
</p><p style="text-align:justify;">Here you can see the Outlook 2013 output (the format and content varies with versions of Office) 
</p><p><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/metablogapi/072414_0825_Howtoanalys1.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59-metablogapi/072414_5F00_0825_5F00_Howtoanalys1.png" alt=" " />
	</p><p>From here I can see how many connection to Exchange I&#39;ve got, the type, and some information on the RTT and processing time (Avg Resp &amp; Avg Proc respectively). We can use these two values together to see the RTT as measured by Outlook. If we take the cached connection with 4963 requests then we have the following:
</p><ul><li>Avg Resp: 29 
</li><li>Avg Proc: 6
</li><li>Avg Resp shows us the RTT measured by Outlook.
</li><li>Avg Proc shows us the processing time, how long the RPC processing latency is, how long the server took to construct the response. If this is high it indicates a problem on the server side.
</li></ul><p>By subtracting 6 from 29 here, we get the latency which is 23ms
</p><p>To confirm this I can use PSPING to connect to the mailbox and this shows an average of 20ms.
</p><p><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/metablogapi/072414_0825_Howtoanalys2.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59-metablogapi/072414_5F00_0825_5F00_Howtoanalys2.png" alt=" " />
	</p><p style="text-align:justify;">A great blog by a Microsoft colleague here describes these tests in more (and better) <a href="http://blogs.technet.com/b/neiljohn/archive/2013/03/23/3476735.aspx">detail</a> but this is a good test with inbuilt tools to show if we have latency or a delay on the Exchange side. The blog also outlines some great steps to take to look at other ways at the client and Outlook performance to see if there are any issues there
</p><p style="text-align:justify;">I normally also take a network trace whilst starting Outlook, then whilst performing actions such as opening a new mailbox, switching calendars, sending a large mail and then analysing the traffic for symptoms described in my blog post.
</p><p style="text-align:justify;">If you&#39;re running a newer version of Windows, you can also use Resource monitor to get a view on your round trip time for Outlook connections.
</p><p>
 </p><p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/resource%20mon.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59/resource-mon.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/metablogapi/072414_0825_Howtoanalys3.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59-metablogapi/072414_5F00_0825_5F00_Howtoanalys3.png" alt=" " border="0" /></a>
	</p><p><span style="font-size:14pt;text-decoration:underline;"><strong>SharePoint:
</strong></span></p><p style="text-align:justify;">There are a number of tools we can use to look at the page load performance within the browser.
</p><p style="text-align:justify;">If you&#39;re using IE then the inbuilt tools are a good starting point, especially with the newer versions of the browser.
</p><p style="text-align:justify;">By hitting F12 and using the inbuilt tools to trace the page load, we get information on each element of the page and how long it took to load and how big it is.
</p><p style="text-align:justify;">Here we see the URLS opened and the HTTP response code.
</p><p><span style="font-size:12pt;text-decoration:underline;"><strong>IE F12 Tools:
</strong></span></p><p>
 </p><p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/IE1.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59/IE1.png" title="Click to Enlarge"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/metablogapi/072414_0825_Howtoanalys4.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59-metablogapi/072414_5F00_0825_5F00_Howtoanalys4.png" alt=" " border="0" /></a>
	</p><p>
 </p><p>And over to the left of the same screen we get more information on how long it took for this to complete.
</p><p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/IE2.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59/IE2.png" title="Click to Enlarge"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/metablogapi/072414_0825_Howtoanalys5.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59-metablogapi/072414_5F00_0825_5F00_Howtoanalys5.png" alt=" " border="0" /></a>
	</p><p>
 </p><p><span style="font-size:14pt;text-decoration:underline;"><strong>Fiddler:
</strong></span></p><p><a href="http://www.telerik.com/fiddler">Fiddler</a> is a tool which inserts itself in front of the browser and allows us to capture encrypted requests in the clear and shows us the time it takes for each request to complete and allows us to spot any problem elements of the page which is slowing us up.
</p><p>Here you can see information similar to that of the F12 tool but with more data.
</p><p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/fiddler1.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59/fiddler1.png" title="Click to enlarge"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/metablogapi/072414_0825_Howtoanalys6.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59-metablogapi/072414_5F00_0825_5F00_Howtoanalys6.png" alt=" " border="0" /></a>
	</p><p>
 </p><p>Over to the right when we click on a URL we see detailing information on how long each stage of this connection tool. For example we have information on how long it took to get the server response, and to complete this response. This sort of information is enough to give us an indication on a slow loading SharePoint page how quickly we got the initial response and subsequently all the data.
</p><p>
 </p><p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/fiddler2.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59/fiddler2.png" title="Click to enlarge"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/metablogapi/072414_0825_Howtoanalys7.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59-metablogapi/072414_5F00_0825_5F00_Howtoanalys7.png" alt=" " border="0" /></a>
	</p><p>If we select multiple URLs and click on Timeline we can see a graphical view of how long each stage took.
</p><p>
 </p><p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/fiddler3.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59/fiddler3.png" title="Click to enlarge"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/metablogapi/072414_0825_Howtoanalys8.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59-metablogapi/072414_5F00_0825_5F00_Howtoanalys8.png" alt=" " border="0" /></a><strong>
		</strong></p><p style="text-align:justify;">This is just intended as an introduction to the tool, the help file is pretty good as is the support community on the website, and there is a book if you&#39;re keen. As this is a third party tool (i.e. non Microsoft) I can&#39;t vouch for it but I know we use elements of the tool in our new Message Analyzer tool.
</p><p style="text-align:justify;"><span style="text-decoration:underline;"><strong><span style="font-size:12pt;">HTTPWatch</span>
			</strong></span></p><p style="text-align:justify;">My personal tool of choice however is <a href="http://www.httpwatch.com/">HTTPWatch</a>. This is a free tool which works with most browsers but you&#39;ll have to buy the full version if you want the extended features but is well worth it if you do this on a regular basis and your boss will stump up for it!
</p><p style="text-align:justify;">This essentially acts as a proxy in front of your browser and allows it to see the elements of the page as they load and for me is the easiest to use and understand whilst giving me some great information on what the performance is like. Again, this is a third party tool and I can&#39;t vouch for it but we do use the full version within Microsoft and I personally use it extensively.
</p><p style="text-align:justify;">I&#39;ll use IE as the example browser here but the tool works with Firefox on Windows. Once installed, if you hit F4 to get the menu up, you should see HTTPwatch as an option, click that and a window should open up at the bottom of the tab.
</p><p style="text-align:justify;">
 </p><p style="text-align:justify;"><img align="left" src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/metablogapi/072414_0825_Howtoanalys9.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59-metablogapi/072414_5F00_0825_5F00_Howtoanalys9.png" alt=" " />
	</p><p style="text-align:justify;">
 </p><p style="text-align:justify;">
 </p><p style="text-align:justify;">
 </p><p style="text-align:justify;">
 </p><p style="text-align:justify;">
 </p><p style="text-align:justify;">
 </p><p style="text-align:justify;">
 </p><p style="text-align:justify;">
 </p><p style="text-align:justify;">
 </p><p style="text-align:justify;">
 </p><p style="text-align:justify;">
 </p><p style="text-align:justify;">
 </p><p style="text-align:justify;">
 </p><p style="text-align:justify;">
 </p><p style="text-align:justify;">
 </p><p style="text-align:justify;">
 </p><p style="text-align:justify;">
 </p><p style="text-align:justify;">
 </p><p style="text-align:justify;">
 </p><p style="text-align:justify;">
 </p><p style="text-align:justify;">
 </p><p style="text-align:justify;">Hit record then enter your URL. Here I opened my test SharePoint page in Office 365. You can see clearly in the timechart which section took the longest to load (the one highlighted took 0.9 seconds) and if you had a poorly performing section of the page, this would be as clear as day in this timechart. I&#39;ve also hovered over the green line which indicated when the page&#39;s rendering started in IE. So I can clearly see here that at 1.4 seconds after entering the URL the page was visible to the user (although some elements were still coming in, in the background).
</p><p style="text-align:justify;">In addition to troubleshooting slow elements of a page, you can also can use this green line to measure a baseline of page load times, either for comparative purposes to an on-prem solution or perhaps before and after a network or page structure change. It&#39;s also useful to be able to compare page load performance from different sites.
</p><p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/httpwatch1.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59/httpwatch1.png" title="Click to enlarge"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/metablogapi/072414_0825_Howtoanalys10.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59-metablogapi/072414_5F00_0825_5F00_Howtoanalys10.png" alt=" " border="0" /></a>
	</p><p style="text-align:justify;">If I then click on the time chart for that URL that took 0.9 seconds I can see where that time was spent in more detail. Here we can see the connection and SSL handshake took no time at all, but we spend most of our time waiting for a response from the server. Once we get the response, we receive the data in 0.1 seconds. In this example, 0.7 seconds waiting isn&#39;t too long a time but if this information gives us some great ideas on where the problem is. If receive was longer than expected, then perhaps we&#39;ve got a slow network, or one of the other network tuning issues in my blogs is causing it to take a long time. Let&#39;s imagine Wait is the longest (like below) but taking 10 seconds. This would indicate to me that perhaps the SharePoint server is taking a long time to construct a response, have a look at the URL, what is it doing? Is it a poorly performing script or similar?
</p><p style="text-align:justify;">Alternatively this could have been caused by packet loss, perhaps the server didn&#39;t get my request for 9 seconds as we had to retransmit it? As we&#39;re using the professional edition we can see the local TCP port used for this connection in the columns and thus, we can (and I often do) take a simultaneous network trace and I can use this port information to isolate the TCP session that this GET request correlates to and look at the network performance. If there are retransmits, even with SSL they will be visible in the network trace, you just won&#39;t be able to see what call it was which was retransmitted.
</p><p><a href="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/timechart.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59/timechart.png"><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/metablogapi/072414_0825_Howtoanalys11.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59-metablogapi/072414_5F00_0825_5F00_Howtoanalys11.png" alt=" " border="0" /></a>
	</p><p><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/metablogapi/072414_0825_Howtoanalys12.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59-metablogapi/072414_5F00_0825_5F00_Howtoanalys12.png" alt=" " />
	</p><p>So, there are an array of tools which enable us to troubleshoot and baseline the application layer, I&#39;ve only scratched the surface of what the tools can do but hopefully it gives you at least a starting point to look at application layer performance with O365 (or on prem for that matter). 
</p><p>Paul</p>]]></content:encoded>
    </item>
    <item>
      <title>DNS geolocation for Office 365, connecting you to your nearest Datacenter for the fastest connectivity</title>
      <link>https://docs.microsoft.com/archive/blogs/onthewire/dns-geolocation-for-office-365-connecting-you-to-your-nearest-datacenter-for-the-fastest-connectivity</link>
      <pubDate>Fri, 27 Jun 2014 15:55:00 GMT</pubDate>
      <dc:creator><![CDATA[Paul Collinge (MSFT)]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/onthewire/2014/06/27/dns-geolocation-for-office-365-connecting-you-to-your-nearest-datacenter-for-the-fastest-connectivity/</guid>
      <description><![CDATA[IMPORTANT UPDATE - This method of connectivity for Exchange Online is no longer in effect. Microsoft...]]></description>
      <content:encoded><![CDATA[<p><span style="font-family:Times New Roman;font-size:12pt;text-decoration:underline"><strong>IMPORTANT UPDATE - This method of connectivity for Exchange Online is no longer in effect. Microsoft uses an Anycast DNS model for Exchange Online connectivity which I'll describe in another post. This GeoDNS model is still relevant as it is available as a backup should it be required so I've left the post for reference
</strong></span></p><p>
 </p><p><span style="font-family:Times New Roman;font-size:12pt">One of the main things we need to get right to ensure the most efficient and speedy connectivity to O365 is where in the world your DNS call is being completed. You'd think this wouldn't matter, you do a DNS lookup for your O365 tenant, get the address then connect right? Well, normally yes, but with O365, especially with Outlook, we do some pretty clever stuff to utilise our worldwide array of datacenters to ensure you get connected to your data as efficiently as possible.
</span></p><p><span style="font-family:Times New Roman;font-size:12pt">Your Outlook connection will do a DNS lookup and we use the location of that lookup to connect you to your nearest Microsoft Datacenter. With Outlook we'll connect to a CAS server there and use our fast Datacenter to datacenter backbone network to connect you to the datacenter where your exchange servers (and data) are located. This generally works much quicker than a direct connection to the datacenter where your tenant is located due to the speed of the interconnecting networks we have.
</span></p><p><a href="http://technet.microsoft.com/en-us/library/dn741250.aspx"><span style="font-family:Times New Roman;font-size:12pt">http://technet.microsoft.com/en-us/library/dn741250.aspx</span></a><span style="font-family:Times New Roman;font-size:12pt"> outlines this in more detail but a diagram nicked from this post shows how this works for Outlook/Exchange connectivity when the Exchange mailbox is located in a NA datacenter but the user is physically located in EMEA. Therefore the DNS lookup is performed in EMEA, we connect to the nearest EMEA datacenter, which then routes the connection through to your mailbox over our backbone network, all in the background and your Outlook client knows nothing about this magic going on behind the scenes.
</span></p><p><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/metablogapi/062714_2301_DNSgeolocat1.gif" alt="" /><span style="font-family:Times New Roman;font-size:12pt">
		</span></p><p> 
 </p><p><span style="font-family:Times New Roman;font-size:12pt">If your environment is making its DNS calls in a location on a different continent to where the user is physically located then you are going to get really bad performance with O365. Take an example where the user and Mailbox is located in EMEA. Your company uses DNS servers located in the USA for all calls, or the user is incorrectly set to use a proxy server in the USA, thus we're given the IP address of a USA based datacenter as that's where we think your user is located. The client will then connect to the USA based datacenter which will route the traffic to the EMEA datacenter which will then send the response back to the USA based datacenter which will then respond to the client back in EMEA. So with this scenario we've got several unnecessary trips across the pond with our data.
</span></p><p><span style="font-family:Times New Roman;font-size:12pt">It is therefore vitally important to get the DNS lookup right for when you move to Outlook on Office 365.
</span></p><p><span style="font-family:Times New Roman;font-size:12pt">So how do you check this? Well it could be a bit tricky as although we <a href="http://technet.microsoft.com/en-us/library/hh373144.aspx">release</a> a list of IP addresses used for O365, we don't tell you which ones map to where, for many reasons including the fact they change regularly. Thankfully one of my Microsoft colleagues has shown me an easy way to check you're connecting to a local datacenter.
</span></p><p><span style="font-family:Times New Roman;font-size:12pt">All you need to do is open a command prompt on the client and ping outlook.office365.com and the response will tell you where the datacenter is you'll connect to. So sat here in the UK at home, I get EMEAWEST
</span></p><p> 
 </p><p><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/metablogapi/062714_2301_DNSgeolocat2.png" alt="" /><span style="font-family:Times New Roman;font-size:12pt">
		</span></p><p><span style="font-family:Times New Roman;font-size:12pt">If I connect to our Singapore VPN endpoint and turn off split tunnelling and force the DNS call down the VPN link (our Internal IT do a great job of making these things configurable for us techies) then I get directed to apacsouth.
</span></p><p><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/metablogapi/062714_2301_DNSgeolocat3.png" alt="" /><span style="font-family:Times New Roman;font-size:12pt">
		</span></p><p><span style="font-family:Times New Roman;font-size:12pt">And if I connect via VPN to the mothership in Seattle, my DNS call is completed there and thus I get directed to namnorthwest.
</span></p><p><img src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/metablogapi/062714_2301_DNSgeolocat4.png" alt="" /><span style="font-family:Times New Roman;font-size:12pt">
		</span></p><p><span style="font-family:Times New Roman;font-size:12pt">So it's a quick and easy check, just make sure the datacenter returned is in the same region as you're physically located in.
</span></p><p><span style="font-family:Times New Roman;font-size:12pt">SharePoint is currently directed to the datacenter where your tenant is located so it doesn't matter so much where the call is made for this (although it should still preferably be local to the user for the portal connection). Lync is slightly different and is outlined in <a href="http://technet.microsoft.com/en-us/library/dn741250.aspx">this</a> article in more detail.
</span></p><p><span style="font-family:Times New Roman;font-size:12pt">It's also worth ensuring all your clients are using a proxy in the same region as where they are located, as if not, they could hit the problem outlined above and thus be getting unnecessarily poor O365 performance.</span></p>]]></content:encoded>
    </item>
    <item>
      <title>Checking your TCP Packets are pulling their weight (TCP Max Segment Size or MSS)</title>
      <link>https://docs.microsoft.com/archive/blogs/onthewire/checking-your-tcp-packets-are-pulling-their-weight-tcp-max-segment-size-or-mss</link>
      <pubDate>Fri, 27 Jun 2014 15:25:22 GMT</pubDate>
      <dc:creator><![CDATA[Paul Collinge (MSFT)]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.technet.microsoft.com/onthewire/2014/06/27/checking-your-tcp-packets-are-pulling-their-weight-tcp-max-segment-size-or-mss/</guid>
      <description><![CDATA[This is a quick one to check to ensure your TCP packets are able to contain the maximum amount of...]]></description>
      <content:encoded><![CDATA[<p style="text-align:justify;">This is a quick one to check to ensure your TCP packets are able to contain the maximum amount of data possible, low values in this area will severely affect network performance.</p>
<p style="text-align:justify;">Maximum Segment size or MSS is a TCP level value which is the largest segment which can be sent on the link minus the headers. To obtain this value take the IP level Maximum Transmission Unit (MTU) and subtract the IP and TCP header size.</p>
<p style="text-align:justify;">So for a standard Ethernet connection with minimum size IP and TCP headers we subtract 40 bytes from the 1500 byte standard packet size (minus the Ethernet Header) leaving us with an MSS of 1460 bytes for data transmission.</p>
<p style="text-align:justify;">So to get the most efficient use of a standard Ethernet connection we want to see an MSS of 1460 bytes being used on our TCP sessions.</p>
<p style="text-align:justify;">This setting is agreed in the TCP 3-way handshake when a TCP session is set up. Both sides send an MSS value and the lower of the two is used for the connection.</p>
<p style="text-align:justify;">It&#39;s easy to check this, take a Netmon or Wireshark trace and find the connection you&#39;re interested in, Netmon will filter the connections by process on the left hand side for you.</p>
<p>Once you&#39;ve found the connection (ensuring you&#39;ve started tracing before initiating the connection) then you just need to open the first to frames of the connection, the SYN &amp; SYN ACK. Indicated by an S followed by an A..S in the description of the frame. To capture the 3-way handshake make sure you start tracing, then start Outlook, or connect to your SharePoint site in a new Browser window.</p>
<p><img alt=" " src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/metablogapi/5314.062714_1920_Checkingyou1.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59-metablogapi/5314.062714_5F00_1920_5F00_Checkingyou1.png" /></p>
<p style="text-align:justify;">Once you&#39;ve clicked on the first packet, the SYN, then in the frame details down on the bottom, open up TCP Options and the MSS can be clearly seen.</p>
<p style="text-align:justify;">Here we see the MaxSegmentSize shown as 1460.</p>
<p><img alt=" " src="https://msdnshared.blob.core.windows.net/media/TNBlogsFS/prod.evol.blogs.technet.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/01/59/metablogapi/3681.062714_1920_Checkingyou2.png" original-url="http://blogs.technet.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-01-59-metablogapi/3681.062714_5F00_1920_5F00_Checkingyou2.png" /></p>
<p>&nbsp;</p>
<p style="text-align:justify;">Repeat this with the SYN ACK which should be the second frame if you&#39;ve filtered the connection away from other traffic. The lower of the two values will be your MSS. If it&#39;s 1460 then you&#39;re configured to use a full sized data payload.</p>
<p style="text-align:justify;">One caveat to this, it doesn&#39;t mean that this value can actually be used, it&#39;s possible a network segment along the route has a lower MTU than we&#39;re aware of. If this is the case, if all is well we&#39;ll get an ICMP message back from the router at the edge of this link when we send a 1460 byte packet with the do not fragment bit set. This packet will tell us what the MTU is on the link and we&#39;ll adjust accordingly. However it&#39;s always worth checking this value is set to a high value and we can see the TCP payload throughout the trace is at 1460 (on full packets) and hasn&#39;t dropped down to a lower value.</p>
<p style="text-align:justify;">It&#39;s common to see this value lower than the maximum of 1460 (for an Ethernet network), if for example we know a network segment along the route has a lower MTU, one with an encryption overhead for example, but the value shouldn&#39;t be significantly lower. 576 Byte packets are a sure sign we&#39;ve hit problems and dropped down to the minimum packet size so keep an eye out for those.</p>
<p style="text-align:justify;">Also, remember, if you&#39;re using a proxy, you&#39;ll have to check this both on the client, and a trace on the proxy or NAT device if used as there will be two distinct TCP sessions in use and you won&#39;t see the problem if it is beyond the proxy/NAT unless you trace there for that second TCP connection.</p>
<p>It&#39;s rare to see an issue with this, but it&#39;s always worth a quick check to ensure it&#39;s working as expected.</p>]]></content:encoded>
    </item>
  </channel>
</rss>