Monday, February 6, 2017

Today we continue to compare Azure networking with AWS networking. We were discussing Security, Security Groups, Network ACLs, Custom routing tables and Virtual network interfaces. We also compared DNS service, connectivity, VPN over IPSec, private connectivity over Exchange, SDK & Tools.
Subnets can be created of any size. They can be single public or a mix of public and private. Traffic can be selectively permitted or denied using network access control lists (ACLs) Security can also be managed using security groups. Subnets follow the same routing as the overall network unless their routing table is customized. Each instance may have multiple ip address assigned, however, this requires one or more NIC cards and is usually permitted only on large instances by both cloud providers.
We can register domain names, route internet traffic to the resources for the domain and check the health of the resources using DNS services such as route 53 from AWS. Azure uses Anycast networking  so that each DNS query is answered by the closest available DNS server thus increasing the performance and the availability of the domain. Azure additionally provides CDN And traffic Manager.
CDN delivers content to end users through a robust network of global data centers. It cuts the time that it takes to serve up content to the web applications by caching closer to the user than the origin. Using the CDN, we can cache publically available objects loaded from Azure blob storage, web application, virtual machine, application folder and other HTTP/HTTPS location. The locations are regional and chosen to maximize the bandwidth to the clients.
Traffic manager routes incoming traffic for high performance and availability. Traffic manager distributes the user traffic for service endpoints in different datacenters using the Domain Name System.
A VPN gateway provides connectivity between the virtual network in the cloud and the on-premise site. It sends encyrpted traffic over a public connection. Azure provides a VPN Gateway and ExpressRoute gateway. A VPN gateway allows point to site as well as multisite that share bandwidth available to the gateway. All the VPN tunnels share the available bandwidth for the gateway. AWS provides Direct Connect links that lets you create virtual interfaces directly to the AWS cloud and Amazon Virtual Private cloud, bypassing the ISPs in the route. Both cloud provider provide programmable SDKs as well as CLI and REST APIs.

Network is assumed to be well-provisioned and its usage is assumed to be effectively free as long as bandwidth is available.  However these assumptions are not always true. For example, cluster applications are often deployed in cloud environments or even across multiple data center sites and cloud tenants would like to minimize their cost.  The authors of McCAT : multi-cloud cost-aware transport propose to control the network usage of cluster applications by creating a cost-aware transport service.  This service filters the data transmitted if it is ultimately not used by the application. It aggregates multiple data items into one to save bandwidth by reducing precision. and it multicasts data items to avoid redundant unicast transmissions of the same data across sites. With these three features, it aims to control and reduce network usage to remain in free tier of services.
#codingexercise
Remove BST keys outside a given range

Node PruneBST(Node root, int min, int max)
{
if (root == null) return null;
root.left = PruneBST(root.left, min, max);
root.right = PruneBST(root.right, min, max);
if (root.data < min)
{
var right = root.right;
delete root;
return right;
}
if (root.data > max)
{
var left = root.left;
delete root;
return left;
}
return root;

The same code above can be modified to find the outliers of the given range.

No comments:

Post a Comment