Skip to main content

Performance - Network

Performance - Network

Performance Principles, Network

  • Efficient Resource Utilization of Networking

    • Utilize network virtualization and segmentation to reduce the number of required network devices and improve throughput
    • Optimize network protocols and topologies to reduce latency and increase throughput
    • Leverage dedicated and shared services to balance resources on both
    • Monitor resource utilization on a regular basis and adjust accordingly
  • Efficient Logic, Queries of Networking

    • Utilize advanced routing algorithms to direct traffic to the most appropriate servers
    • Use network segmentation and virtualization to isolate traffic and reduce latency
    • Optimize queries to reduce traffic latency and increase throughput
    • Leverage hardware and software caching to improve the performance of queries
  • Efficient Storage, Read/Write of Networking

    • Utilize software-defined storage to centralize storage and reduce latency
    • Utilize distributed storage technologies to scale performance and increase throughput
    • Ensure data consistency with replication techniques to prevent data loss
    • Leverage caching techniques to reduce latency and increase throughput
  • Concurrency (Hardware/Software) of Networking

    • Utilize virtualization and segmentation to optimize the use of network resources
    • Leverage load balancers to distribute workloads evenly across resources
    • Use caching techniques to improve access time by storing frequently used data
    • Utilize parallelism and replication techniques to improve throughput and resilience
  • Caching (Hardware/Software) of Networking

    • Utilize hardware and software caching to improve access time by storing frequently used data
    • Leverage distributed caching to scale performance and increase throughput
    • Utilize replication and caching techniques to improve the resilience of the network
    • Utilize caching to reduce latency and increase throughput

Network Performance Tuning

Performance Optimization TipsDescription
CloudFrontUse CloudFront to distribute your app's content to edge locations worldwide to reduce latency and improve performance.
Content Delivery NetworkUse Content Delivery Network (CDN) to improve the performance and availability of the app by caching content closer to users.
Lambda@EdgeUse Lambda@Edge to run serverless compute in response to CloudFront events, to optimize your app's performance.
Elastic IPsUse Elastic IPs to assign a static IP address to instances, allowing for better control of IP-based access control lists.
VPC EndpointsUse VPC endpoints to allow the app to access services in the VPC without going over the internet.
Elastic Network Interface (ENI)Use Elastic Network Interface (ENI) to improve network performance by attaching multiple ENIs to a single instance.
VPC PeeringUse VPC peering to connect VPCs within the same or different regions for better network performance.
Multiple VPCsUse multiple VPCs to isolate different parts of your app for better security and performance.
Direct ConnectUse Direct Connect to establish a dedicated network connection between your on-prem
CachingUse caching techniques such as in-memory caching or caching at the CDN level to improve the performance of frequently accessed data.
Network OptimizationOptimize the network by enabling TCP/IP settings, disabling unnecessary protocols and services, and monitoring network performance.
Load BalancingUse Load Balancing to distribute incoming traffic across multiple servers to improve performance and ensure availability.
Elastic Load Balancer (ELB)Use Elastic Load Balancer (ELB) to distribute incoming traffic across multiple instances for better scalability and availability.
Application Load Balancer (ALB)Use Application Load Balancer (ALB) to route incoming traffic to different target groups based on rules, improving the scalability and availability of your app.
Auto ScalingUse auto scaling to automatically increase or decrease the number of instances based on traffic demand.
Auto scaling groupsUse auto scaling groups to automatically scale the number of instances based on performance metrics.
ElasticacheUse Elasticache to improve the performance of your app by caching frequently accessed data in memory.
CloudWatchUse CloudWatch to monitor and troubleshoot performance issues.
Elastic Block Store (EBS)Use Elastic Block Store (EBS) for storage to improve the I/O performance of your instances.
CloudWatch AlarmsUse CloudWatch Alarms to automatically scale up or down the number of instances based on performance metrics.
CloudTrailUse CloudTrail to monitor the performance and security of your AWS resources and detect any issues.

VPC Peering

  • Increased communication and resource sharing:
    • Allows resources in different VPCs to communicate with each other as if they were in the same network. This allows for increased flexibility and resource sharing.
  • Improved security:
    • Improve security by isolating different parts of a network and limiting access between them.
  • Cost savings:
    • Reduce costs by eliminating the need for a VPN or a dedicated leased line to connect different VPCs.
  • Latency reduction:
    • Reduce latency by allowing resources in different VPCs to communicate with each other directly, rather than routing traffic through the internet.
  • Compliance:
    • Enabling peering between VPCs allows to meet the compliance requirements by separating the production, development and other environments.

VPC Endpoints

  • Improved security:
    • VPC endpoints allow you to control access to AWS services from your VPC, reducing the attack surface of your network.
  • Reduced data transfer costs:
    • VPC endpoints allow you to access AWS services without going over the internet, which can reduce data transfer costs.
  • Improved performance:
    • VPC endpoints can improve performance by reducing the latency of service requests.
  • Compliance:
    • VPC endpoints can help you meet regulatory and compliance requirements by providing a secure and direct way to access AWS services.
  • Network isolation:
    • VPC endpoints allow to access AWS services without the need of a NAT Gateway or VPN, which increases the security and allows to isolate the network.
  • Consistent network experience:
    • VPC endpoints allows access to services from within the VPC, providing a consistent network experience across on-premises and AWS environments.