Video Conferencing
❏ IPTV
❏ Online Gaming
❏ Software Distribution
❏ Stock Quote Distribution
❏ News Feeds
Broadcasting:
● One source and all destinations on the subnet.
● The relationship is one to all.
● The destination address is a special broadcast address.
The network layer is responsible for transporting data segments from source to destination hosts. It encapsulates segments into datagrams and delivers them to the transport layer. Network layer protocols run on every host and router. Routers examine header fields to forward datagrams appropriately based on destination addresses. The network layer handles addressing, routing, and intermediate forwarding of datagrams between source and destination hosts.
This document provides an overview of key concepts in the network layer, including the architecture of routers, IPv6, routing algorithms like link state and distance vector, and routing protocols like RIP, OSPF, and BGP. It discusses router functions such as routing algorithms/protocols and packet forwarding. It also covers topics like switching fabrics, queuing, and hierarchical routing between autonomous systems.
This document discusses and compares two routing protocols: distance vector routing and link state routing. Distance vector routing involves each node sharing its routing table only with its neighbors, while link state routing involves each node having knowledge of the entire network topology. The document outlines the working principles, drawbacks like count to infinity, and pros and cons of each approach.
The document describes routing algorithms and protocols at the network layer. It discusses global routing algorithms that use complete network knowledge versus decentralized algorithms that do not. It also covers the distance vector routing algorithm and how it works iteratively to share routing information between neighbors. Specific distance vector protocols discussed include RIP, which uses hop count as its metric. The document also introduces the concepts of hierarchical routing and autonomous systems to allow scaling of routing in a decentralized manner across large networks.
The document discusses hierarchical routing in computer networks. It describes how routing is divided into intra-autonomous system (intra-AS) routing within an AS and inter-autonomous system (inter-AS) routing between ASes. Special routers called gateways perform both intra-AS routing with other routers in their AS and inter-AS routing with gateways in other ASes. This hierarchical structure allows scaling to large networks with many destinations by aggregating routers into regions.
The document describes routing algorithms used in computer networks. It discusses two main types of routing algorithms: link-state algorithms and distance-vector algorithms. Link-state algorithms use a complete map of the entire network topology to calculate the shortest paths between all nodes, while distance-vector algorithms use an iterative process where each router shares routing information with neighbors to determine the shortest paths. The document then provides examples of how Dijkstra's algorithm, a link-state algorithm, and the Bellman-Ford distance-vector algorithm work to calculate the optimal paths through a sample network.
The network layer is responsible for transporting data segments from source to destination hosts. It encapsulates segments into datagrams and delivers them to the transport layer. Network layer protocols run on every host and router. Routers examine header fields to forward datagrams appropriately based on destination addresses. The network layer handles addressing, routing, and intermediate forwarding of datagrams between source and destination hosts.
This document provides an overview of key concepts in the network layer, including the architecture of routers, IPv6, routing algorithms like link state and distance vector, and routing protocols like RIP, OSPF, and BGP. It discusses router functions such as routing algorithms/protocols and packet forwarding. It also covers topics like switching fabrics, queuing, and hierarchical routing between autonomous systems.
This document discusses and compares two routing protocols: distance vector routing and link state routing. Distance vector routing involves each node sharing its routing table only with its neighbors, while link state routing involves each node having knowledge of the entire network topology. The document outlines the working principles, drawbacks like count to infinity, and pros and cons of each approach.
The document describes routing algorithms and protocols at the network layer. It discusses global routing algorithms that use complete network knowledge versus decentralized algorithms that do not. It also covers the distance vector routing algorithm and how it works iteratively to share routing information between neighbors. Specific distance vector protocols discussed include RIP, which uses hop count as its metric. The document also introduces the concepts of hierarchical routing and autonomous systems to allow scaling of routing in a decentralized manner across large networks.
The document discusses hierarchical routing in computer networks. It describes how routing is divided into intra-autonomous system (intra-AS) routing within an AS and inter-autonomous system (inter-AS) routing between ASes. Special routers called gateways perform both intra-AS routing with other routers in their AS and inter-AS routing with gateways in other ASes. This hierarchical structure allows scaling to large networks with many destinations by aggregating routers into regions.
The document describes routing algorithms used in computer networks. It discusses two main types of routing algorithms: link-state algorithms and distance-vector algorithms. Link-state algorithms use a complete map of the entire network topology to calculate the shortest paths between all nodes, while distance-vector algorithms use an iterative process where each router shares routing information with neighbors to determine the shortest paths. The document then provides examples of how Dijkstra's algorithm, a link-state algorithm, and the Bellman-Ford distance-vector algorithm work to calculate the optimal paths through a sample network.
Computer Communication Networks-Routing protocols 1Krishna Nanda
This document provides an overview of routing protocols in computer networks. It discusses:
1) The goal of routing is to deliver data packets from source to destination(s) using forwarding tables updated by routing protocols. Routing can be unicast (one-to-one) or multicast (one-to-many).
2) Common routing algorithms include distance-vector routing (Bellman-Ford algorithm) and link-state routing (Dijkstra's algorithm). Distance-vector routing uses distance vectors exchanged between neighbors to calculate least-cost paths.
3) Issues with distance-vector routing include slow convergence and counting to infinity when link costs increase.
PERFORMANCE ANALYSIS OF DISTANCE VECTOR AND LINKED STATE ROUTING PROTOCOLIRJET Journal
The document analyzes and compares the performance of distance vector and link state routing protocols through simulation. It provides background on routing protocols and describes the operation of the distance vector and link state algorithms through pseudocode. The results of simulations run using the NS 2.3.5 network simulator are presented, showing that link state routing has better throughput than distance vector as network density increases, while distance vector has lower packet dropping. It concludes that distance vector is better for lower packet dropping while link state performs better in dense networks with high throughput.
This document discusses routing protocols in computer networks. It defines distance vector routing and link state routing, describing how each determines the best path. Distance vector routing uses hop count as a metric and shares routing tables, while link state routing shares information about network reachability and metrics. The document provides examples of how distance vector and Dijkstra's algorithm work through updating routing tables. It outlines characteristics of routers and compares advantages and disadvantages of the two routing approaches.
The document provides an overview of networking concepts including the 7-layer OSI model, network layer protocols like IP, and transport layer protocols like TCP and UDP. It discusses key topics such as packet structure, IP addressing, forwarding and routing, and transport layer functions including connection establishment, reliability, and congestion/flow control.
This document discusses routing algorithms at the network layer. It introduces link state and distance vector routing algorithms, which use either global or decentralized network topology information. Dijkstra's link-state algorithm is then explained in detail, showing how it uses global link cost information to iteratively find the least-cost path from a source node to all other nodes. The example demonstrates how Dijkstra's algorithm builds a shortest path tree with complexity O(n2). Routing oscillations are also discussed when link costs depend on traffic volume.
The document discusses classless addressing and subnetting in computer networks. It explains that classless addressing allocates address blocks in variable sizes based on need rather than fixed classes, and addresses are denoted using CIDR notation with a mask length. The document also provides an example of how to design subnets for an organization granted a block of IP addresses.
The document summarizes routing protocols and algorithms used in computer networks. It discusses how routing protocols define how routers exchange network information, including the type of information exchanged and timing. Examples of routing protocols include RIP, EIGRP, OSPF and BGP. Routing algorithms find the least cost path between routers using a graph representation of the network. Dijkstra's algorithm is a link-state routing algorithm that computes the shortest paths from one router to all others using an iterative approach where it progressively updates the costs of reachable nodes.
1. The document discusses routing protocols and the distance vector routing algorithm.
2. The distance vector algorithm is a decentralized routing algorithm where each router maintains a distance vector with the estimated distance to every destination and periodically shares this information with neighboring routers.
3. Over multiple iterations, each router will update its distance vector using the Bellman-Ford equation based on information received from neighbors until the estimates converge to the actual least cost paths.
The document discusses several topics related to computer networks including:
1. The network layer, including design issues like store-and-forward and connection-oriented services. Routing algorithms like shortest path routing and flooding are also discussed.
2. Congestion control principles and policies for preventing congestion in virtual circuits and datagram subnets.
3. Transport layer protocols like TCP and UDP, and how they provide services and manage connections and transmissions.
4. Application layer protocols like DNS for managing domain names and resource records.
The document discusses routing algorithms in computer networks. It describes the functions of the network layer, including internetworking, addressing, routing, and packetizing. It then focuses on routing algorithms, classifying them as either adaptive or non-adaptive. Adaptive algorithms make routing decisions dynamically based on network conditions, while non-adaptive algorithms use static routing tables. Specific adaptive algorithms discussed include distance vector routing and link state routing, along with explanations of how each works.
This chapter discusses unicast routing and routing algorithms. It introduces the concepts of least-cost routing and least-cost trees to model routing between nodes in a network. It then describes three common routing algorithms: distance-vector routing, link-state routing, and path-vector routing. Distance-vector routing uses the Bellman-Ford algorithm and routing vectors to exchange routing information. Link-state routing uses flooding of link-state advertisements and the Dijkstra algorithm to build a global link-state database and compute least-cost trees. Path-vector routing additionally propagates path vectors to avoid routing loops.
This document contains slides summarizing key concepts about network layer control planes from the textbook "Computer Networking: A Top Down Approach". The slides cover traditional routing algorithms like link state (e.g. Dijkstra's algorithm) and distance vector (e.g. Bellman-Ford), as well as software defined networking control planes. Specific routing protocols discussed include OSPF, BGP, OpenFlow and SDN controllers. The document also mentions ICMP and network management using SNMP.
The document discusses network layer concepts including network layer design issues, routing algorithms, and protocols. It provides 3 key points:
1) The network layer is responsible for delivering packets between endpoints over multiple links using store-and-forward packet switching. It implements both connectionless and connection-oriented services for the transport layer.
2) Common routing algorithms discussed include shortest path algorithms like Dijkstra's algorithm, flooding, and distance vector routing. Flooding broadcasts all packets while distance vector uses the Bellman-Ford equation to iteratively calculate the shortest paths.
3) Protocols discussed include IPv4, IPv6, ARP, RARP, DHCP, and ICMP. Connectionless transmission uses datagrams while connection
This document provides an overview of representing graphs and Dijkstra's algorithm in Prolog. It discusses different ways to represent graphs in Prolog, including using edge clauses, a graph term, and an adjacency list. It then explains Dijkstra's algorithm for finding the shortest path between nodes in a graph and provides pseudocode for implementing it in Prolog using rules for operations like finding the minimum value and merging lists.
This document provides an overview of representing graphs and Dijkstra's algorithm in Prolog. It discusses different ways to represent graphs in Prolog, including using edge clauses, a graph term, and an adjacency list. It then explains Dijkstra's algorithm for finding the shortest path between nodes in a graph and provides pseudocode for implementing it in Prolog using rules for operations like finding the minimum value and merging lists.
This document discusses graph neural networks and their applications. It describes how graph neural networks work by having each node aggregate information from its neighbors using neural networks. This allows each node to learn representations that are informed by its local graph structure. The document also discusses some key properties of graph neural networks, such as their ability to learn different computation graphs for different nodes, their failure cases when nodes are isomorphic, and how adding position information like anchors can help distinguish nodes.
Distance Vector & Link state Routing AlgorithmMOHIT AGARWAL
1) Each router maintains a routing table containing the outgoing link and distance to reach each destination node. 2) Routers periodically share their routing tables with neighbors so each can update its own table. 3) This allows routers to continuously determine the shortest paths to all destinations as network conditions change.
This document discusses routing algorithms and Dijkstra's algorithm specifically. It begins by defining the goal of routing algorithms as finding the least cost path between routers given the network topology and link costs. It then provides an overview of key routing algorithm concepts like graphs, paths, costs, and classifications like global vs decentralized algorithms. The bulk of the document focuses on explaining Dijkstra's algorithm step-by-step using an example graph. It shows how the algorithm iteratively finds the least cost path from a source node to all other nodes. The document concludes by discussing the computational cost of Dijkstra's algorithm and potential issues with using it for congestion-based routing.
The document discusses different routing algorithms:
- Distance-vector routing uses the Bellman-Ford equation to find the least cost path between nodes. It has a problem with slow propagation of cost increases.
- Link-state routing uses a link-state database containing the state of all links to build least-cost trees using the Dijkstra algorithm. Nodes flood their link state packets to build this database.
- Path-vector routing allows the source to control the path by imposing policies, rather than always choosing the least-cost path like distance-vector and link-state routing. This avoids security and privacy issues.
This document provides an overview of wireless networking and satellite communication technologies. It discusses various topics including satellite parameters and configurations, capacity allocation using frequency division and time division multiple access, wireless systems standards, cordless systems, wireless local loop, and mobile IP and WAP protocols. Examples of satellite orbits like GEO, MEO, and LEO are described along with their advantages and disadvantages. Frequency bands and impairment factors for satellite communication are also summarized.
Repeaters amplify signals and hubs connect multiple devices in a star topology within a single collision domain. Switches forward frames based on MAC addresses, creating multiple collision domains and full-duplex connections. Routers connect different networks and forward packets based on IP addresses. Modems convert between digital and analog signals to transmit data over telephone or cable lines. VPNs create secure private networks across public networks using encryption. Common network cabling includes coaxial cable, twisted pair cable, and fiber optic cable.
Computer Communication Networks-Routing protocols 1Krishna Nanda
This document provides an overview of routing protocols in computer networks. It discusses:
1) The goal of routing is to deliver data packets from source to destination(s) using forwarding tables updated by routing protocols. Routing can be unicast (one-to-one) or multicast (one-to-many).
2) Common routing algorithms include distance-vector routing (Bellman-Ford algorithm) and link-state routing (Dijkstra's algorithm). Distance-vector routing uses distance vectors exchanged between neighbors to calculate least-cost paths.
3) Issues with distance-vector routing include slow convergence and counting to infinity when link costs increase.
PERFORMANCE ANALYSIS OF DISTANCE VECTOR AND LINKED STATE ROUTING PROTOCOLIRJET Journal
The document analyzes and compares the performance of distance vector and link state routing protocols through simulation. It provides background on routing protocols and describes the operation of the distance vector and link state algorithms through pseudocode. The results of simulations run using the NS 2.3.5 network simulator are presented, showing that link state routing has better throughput than distance vector as network density increases, while distance vector has lower packet dropping. It concludes that distance vector is better for lower packet dropping while link state performs better in dense networks with high throughput.
This document discusses routing protocols in computer networks. It defines distance vector routing and link state routing, describing how each determines the best path. Distance vector routing uses hop count as a metric and shares routing tables, while link state routing shares information about network reachability and metrics. The document provides examples of how distance vector and Dijkstra's algorithm work through updating routing tables. It outlines characteristics of routers and compares advantages and disadvantages of the two routing approaches.
The document provides an overview of networking concepts including the 7-layer OSI model, network layer protocols like IP, and transport layer protocols like TCP and UDP. It discusses key topics such as packet structure, IP addressing, forwarding and routing, and transport layer functions including connection establishment, reliability, and congestion/flow control.
This document discusses routing algorithms at the network layer. It introduces link state and distance vector routing algorithms, which use either global or decentralized network topology information. Dijkstra's link-state algorithm is then explained in detail, showing how it uses global link cost information to iteratively find the least-cost path from a source node to all other nodes. The example demonstrates how Dijkstra's algorithm builds a shortest path tree with complexity O(n2). Routing oscillations are also discussed when link costs depend on traffic volume.
The document discusses classless addressing and subnetting in computer networks. It explains that classless addressing allocates address blocks in variable sizes based on need rather than fixed classes, and addresses are denoted using CIDR notation with a mask length. The document also provides an example of how to design subnets for an organization granted a block of IP addresses.
The document summarizes routing protocols and algorithms used in computer networks. It discusses how routing protocols define how routers exchange network information, including the type of information exchanged and timing. Examples of routing protocols include RIP, EIGRP, OSPF and BGP. Routing algorithms find the least cost path between routers using a graph representation of the network. Dijkstra's algorithm is a link-state routing algorithm that computes the shortest paths from one router to all others using an iterative approach where it progressively updates the costs of reachable nodes.
1. The document discusses routing protocols and the distance vector routing algorithm.
2. The distance vector algorithm is a decentralized routing algorithm where each router maintains a distance vector with the estimated distance to every destination and periodically shares this information with neighboring routers.
3. Over multiple iterations, each router will update its distance vector using the Bellman-Ford equation based on information received from neighbors until the estimates converge to the actual least cost paths.
The document discusses several topics related to computer networks including:
1. The network layer, including design issues like store-and-forward and connection-oriented services. Routing algorithms like shortest path routing and flooding are also discussed.
2. Congestion control principles and policies for preventing congestion in virtual circuits and datagram subnets.
3. Transport layer protocols like TCP and UDP, and how they provide services and manage connections and transmissions.
4. Application layer protocols like DNS for managing domain names and resource records.
The document discusses routing algorithms in computer networks. It describes the functions of the network layer, including internetworking, addressing, routing, and packetizing. It then focuses on routing algorithms, classifying them as either adaptive or non-adaptive. Adaptive algorithms make routing decisions dynamically based on network conditions, while non-adaptive algorithms use static routing tables. Specific adaptive algorithms discussed include distance vector routing and link state routing, along with explanations of how each works.
This chapter discusses unicast routing and routing algorithms. It introduces the concepts of least-cost routing and least-cost trees to model routing between nodes in a network. It then describes three common routing algorithms: distance-vector routing, link-state routing, and path-vector routing. Distance-vector routing uses the Bellman-Ford algorithm and routing vectors to exchange routing information. Link-state routing uses flooding of link-state advertisements and the Dijkstra algorithm to build a global link-state database and compute least-cost trees. Path-vector routing additionally propagates path vectors to avoid routing loops.
This document contains slides summarizing key concepts about network layer control planes from the textbook "Computer Networking: A Top Down Approach". The slides cover traditional routing algorithms like link state (e.g. Dijkstra's algorithm) and distance vector (e.g. Bellman-Ford), as well as software defined networking control planes. Specific routing protocols discussed include OSPF, BGP, OpenFlow and SDN controllers. The document also mentions ICMP and network management using SNMP.
The document discusses network layer concepts including network layer design issues, routing algorithms, and protocols. It provides 3 key points:
1) The network layer is responsible for delivering packets between endpoints over multiple links using store-and-forward packet switching. It implements both connectionless and connection-oriented services for the transport layer.
2) Common routing algorithms discussed include shortest path algorithms like Dijkstra's algorithm, flooding, and distance vector routing. Flooding broadcasts all packets while distance vector uses the Bellman-Ford equation to iteratively calculate the shortest paths.
3) Protocols discussed include IPv4, IPv6, ARP, RARP, DHCP, and ICMP. Connectionless transmission uses datagrams while connection
This document provides an overview of representing graphs and Dijkstra's algorithm in Prolog. It discusses different ways to represent graphs in Prolog, including using edge clauses, a graph term, and an adjacency list. It then explains Dijkstra's algorithm for finding the shortest path between nodes in a graph and provides pseudocode for implementing it in Prolog using rules for operations like finding the minimum value and merging lists.
This document provides an overview of representing graphs and Dijkstra's algorithm in Prolog. It discusses different ways to represent graphs in Prolog, including using edge clauses, a graph term, and an adjacency list. It then explains Dijkstra's algorithm for finding the shortest path between nodes in a graph and provides pseudocode for implementing it in Prolog using rules for operations like finding the minimum value and merging lists.
This document discusses graph neural networks and their applications. It describes how graph neural networks work by having each node aggregate information from its neighbors using neural networks. This allows each node to learn representations that are informed by its local graph structure. The document also discusses some key properties of graph neural networks, such as their ability to learn different computation graphs for different nodes, their failure cases when nodes are isomorphic, and how adding position information like anchors can help distinguish nodes.
Distance Vector & Link state Routing AlgorithmMOHIT AGARWAL
1) Each router maintains a routing table containing the outgoing link and distance to reach each destination node. 2) Routers periodically share their routing tables with neighbors so each can update its own table. 3) This allows routers to continuously determine the shortest paths to all destinations as network conditions change.
This document discusses routing algorithms and Dijkstra's algorithm specifically. It begins by defining the goal of routing algorithms as finding the least cost path between routers given the network topology and link costs. It then provides an overview of key routing algorithm concepts like graphs, paths, costs, and classifications like global vs decentralized algorithms. The bulk of the document focuses on explaining Dijkstra's algorithm step-by-step using an example graph. It shows how the algorithm iteratively finds the least cost path from a source node to all other nodes. The document concludes by discussing the computational cost of Dijkstra's algorithm and potential issues with using it for congestion-based routing.
The document discusses different routing algorithms:
- Distance-vector routing uses the Bellman-Ford equation to find the least cost path between nodes. It has a problem with slow propagation of cost increases.
- Link-state routing uses a link-state database containing the state of all links to build least-cost trees using the Dijkstra algorithm. Nodes flood their link state packets to build this database.
- Path-vector routing allows the source to control the path by imposing policies, rather than always choosing the least-cost path like distance-vector and link-state routing. This avoids security and privacy issues.
This document provides an overview of wireless networking and satellite communication technologies. It discusses various topics including satellite parameters and configurations, capacity allocation using frequency division and time division multiple access, wireless systems standards, cordless systems, wireless local loop, and mobile IP and WAP protocols. Examples of satellite orbits like GEO, MEO, and LEO are described along with their advantages and disadvantages. Frequency bands and impairment factors for satellite communication are also summarized.
Repeaters amplify signals and hubs connect multiple devices in a star topology within a single collision domain. Switches forward frames based on MAC addresses, creating multiple collision domains and full-duplex connections. Routers connect different networks and forward packets based on IP addresses. Modems convert between digital and analog signals to transmit data over telephone or cable lines. VPNs create secure private networks across public networks using encryption. Common network cabling includes coaxial cable, twisted pair cable, and fiber optic cable.
This document discusses artificial intelligence and is presented by Krishnajith J with a roll number of 70 and registration number 20151106. It covers an introduction, terminologies, types of AI, advancements around the globe in health, and a conclusion.
Supply chain management involves planning and managing the flow of goods and services from raw materials to end customers. The key objectives are to improve customer value and satisfaction while achieving profitability. SCM has evolved from independent departments to integrated internal and external networks. It encompasses functions like procurement, production, distribution, and returns. Challenges to effective SCM include increasing product variety, shorter product lifecycles, demanding customers, globalization, and difficulty executing new strategies.
This document discusses key concepts related to software design, including:
1. The design process focuses on determining system modules and their specifications and interconnections at both the module and detailed logic levels.
2. Object-oriented design models the problem domain using concepts like classes, objects, and relationships to make the design easier to produce and understand.
3. Modularization criteria like coupling and cohesion aim to produce loosely coupled and highly cohesive modules to improve qualities like modifiability and understandability.
The document discusses software requirements and requirement analysis. It defines a software requirement as conditions needed by users or that systems must possess. Requirement analysis involves understanding the problem domain through meetings with clients. The output is a Software Requirements Specification (SRS) document that describes what the software should do without describing how. The SRS must be correct, complete, unambiguous, verifiable and consistent. It is structured with sections for introduction, detailed requirements and more. Data flow diagrams are used during analysis to show the flow of data through processes in a system.
Software engineering is defined as the systematic, disciplined and quantifiable approach to software development. It focuses on applying engineering principles and techniques to software in a cost-effective manner. As software grew in size and complexity, an engineering approach became necessary to effectively manage projects. Early approaches included structured programming and design based on control flow and data structures. Modern approaches include object-oriented design and iterative development processes. The software development life cycle typically includes phases for requirements analysis, design, implementation, testing, deployment and maintenance.
CN 5151(15) Module I part 1.3 21072020.pdfADARSHN40
This document provides an overview of computer networks and wireless local area networks (WLANs). It discusses the TCP/IP model and layers, Ethernet protocols, wired and wireless LAN architectures and their differences. Wireless LAN characteristics like attenuation, interference and multipath propagation are described. The document also covers wireless LAN access control using CSMA/CA, the IEEE 802.11 project, services like BSS and ESS. Key components of a WLAN like the MAC sublayer, DCF, PCF, and common LAN connecting devices are summarized.
CN 5151(15) Module II part 2 13082020.pdfADARSHN40
The document provides information about computer networks and the network layer. It discusses network layer services like packetizing, routing, and forwarding. It also covers IPV4 addressing including address space, classful and classless addressing, subnetting, and special addresses. The network layer protocols Internet Protocol (IP) and Dynamic Host Configuration Protocol (DHCP) are explained. IP topics include the datagram format, fragmentation, and auxiliary protocols. DHCP is described as a client-server protocol that dynamically assigns IP addresses and other network parameters to hosts.
The document discusses network layer services and performance. It describes the key services as packetizing, routing, forwarding and other services like error control, flow control and congestion control. It then discusses various delays in network layer performance like transmission delay, propagation delay, processing delay and queuing delay. The total delay a packet experiences is the sum of these delays across all the devices and routers between source and destination.
06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Data and AI
Discussion on Vector Databases, Unstructured Data and AI
https://www.meetup.com/unstructured-data-meetup-new-york/
This meetup is for people working in unstructured data. Speakers will come present about related topics such as vector databases, LLMs, and managing data at scale. The intended audience of this group includes roles like machine learning engineers, data scientists, data engineers, software engineers, and PMs.This meetup was formerly Milvus Meetup, and is sponsored by Zilliz maintainers of Milvus.
Natural Language Processing (NLP), RAG and its applications .pptxfkyes25
1. In the realm of Natural Language Processing (NLP), knowledge-intensive tasks such as question answering, fact verification, and open-domain dialogue generation require the integration of vast and up-to-date information. Traditional neural models, though powerful, struggle with encoding all necessary knowledge within their parameters, leading to limitations in generalization and scalability. The paper "Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks" introduces RAG (Retrieval-Augmented Generation), a novel framework that synergizes retrieval mechanisms with generative models, enhancing performance by dynamically incorporating external knowledge during inference.
The Ipsos - AI - Monitor 2024 Report.pdfSocial Samosa
According to Ipsos AI Monitor's 2024 report, 65% Indians said that products and services using AI have profoundly changed their daily life in the past 3-5 years.
Learn SQL from basic queries to Advance queriesmanishkhaire30
Dive into the world of data analysis with our comprehensive guide on mastering SQL! This presentation offers a practical approach to learning SQL, focusing on real-world applications and hands-on practice. Whether you're a beginner or looking to sharpen your skills, this guide provides the tools you need to extract, analyze, and interpret data effectively.
Key Highlights:
Foundations of SQL: Understand the basics of SQL, including data retrieval, filtering, and aggregation.
Advanced Queries: Learn to craft complex queries to uncover deep insights from your data.
Data Trends and Patterns: Discover how to identify and interpret trends and patterns in your datasets.
Practical Examples: Follow step-by-step examples to apply SQL techniques in real-world scenarios.
Actionable Insights: Gain the skills to derive actionable insights that drive informed decision-making.
Join us on this journey to enhance your data analysis capabilities and unlock the full potential of SQL. Perfect for data enthusiasts, analysts, and anyone eager to harness the power of data!
#DataAnalysis #SQL #LearningSQL #DataInsights #DataScience #Analytics
STATATHON: Unleashing the Power of Statistics in a 48-Hour Knowledge Extravag...sameer shah
"Join us for STATATHON, a dynamic 2-day event dedicated to exploring statistical knowledge and its real-world applications. From theory to practice, participants engage in intensive learning sessions, workshops, and challenges, fostering a deeper understanding of statistical methodologies and their significance in various fields."
4th Modern Marketing Reckoner by MMA Global India & Group M: 60+ experts on W...Social Samosa
The Modern Marketing Reckoner (MMR) is a comprehensive resource packed with POVs from 60+ industry leaders on how AI is transforming the 4 key pillars of marketing – product, place, price and promotions.
4th Modern Marketing Reckoner by MMA Global India & Group M: 60+ experts on W...
Cnetwork
1. Diploma in Computer Hardware Engineering
Presenter: Sreejesh NG
Lecturer in Computer Hardware Engineering
Government Polytechnic College, Cherthala
Ref: Data Communications and Networking, 5E by Forouzan
1
COMPUTER NETWORKS
(5151 Rev 2015)
Module 2 - Part 3
3. 3
MODULE 2 - NETWORK LAYER
❖ Network layer services – Packetizing, routing and forwarding, other services
❖ Performance – delay, throughput, packet loss, congestion control
❖ IPV4 address – address space, classful addressing, classless addressing,
subnetting
❖ DHCP
❖ Internet protocol (IP) – datagram format, fragmentation
❖ IPV4 datagram security
❖ Routing algorithms
➢ Distance-vector (DV)
➢ Link-state (LS)
➢ Path vector (PV)
❖ Unicasting, multicasting, broadcasting
Ref: Data Communications and Networking - Behrouz A. Forouzan -
McGraw Hill Edn.- Fifth Edition
4. 4
ROUTING ALGORITHMS
● Designed to find the least cost paths between routers.
● Basis for different routing protocols.
● Differs the way they interpret the least cost and the way they create the
least-cost tree for each node.
● Major Algorithms:
○ Distance Vector (DV) routing algorithm
○ Link State routing (LS) algorithm
○ Path Vector (PV) routing algorithm
6. 6
Distance Vector (DV) Routing Algorithm
● The first thing each node creates is its own least-cost tree with the
rudimentary information it has about its immediate neighbors.
● The incomplete trees are exchanged between immediate neighbors to
make the trees more and more complete and to represent the whole
internet.
● A router continuously tells all of its neighbors what it knows about the whole
internet.
7. 7
Distance Vector Routing Algorithm
● Bellman-Ford Equation
○ Heart of DV routing
○ Used to find the least cost (shortest distance) between a source node,
x, and a destination node, y, through some intermediary nodes (a, b, c),
when the costs between the source and the intermediary nodes (say c)
and the least costs between the intermediary nodes and the destination
(say D) are given.
○ To update an existing least cost with a least cost through an
intermediary node, such as z, if the latter is shorter.
8. 8
Distance Vector Routing Algorithm
● Bellman-Ford Equation
○ cxa
- Cost between x and a
○ Day
- Least cost between a and y
9. 9
Distance Vector Routing Algorithm
● Distance Vectors
○ a one-dimensional array to represent the least cost tree.
○ the name of the distance vector defines the root, the indexes define
the destinations, and the value of each cell defines the least cost from
the root to the destination.
○ Gives only the least costs to the destinations, not the paths.
10. 10
Distance Vector Routing Algorithm - Steps
1. On booting, each node sends some greeting messages out of its interfaces
and discovers the identity of the immediate neighbors and the distance
between itself and each neighbor.
2. Makes a simple distance vector by these values and set other values as
infinity.
11. 11
Distance Vector Routing Algorithm - Steps
3. Then it sends a copy of the vector to all its immediate neighbors.
4. After a node receives a distance vector from a neighbor, it updates its
distance vector using the Bellman-Ford equation (second case: Update).
2 4
12. 12
Distance Vector Routing Algorithm - Steps
5. After updating a node, it immediately sends its updated vector to all
neighbors.
6. This process is repeated continuously and eventually each node finds the
least cose tree.
13. 13
Distance Vector Routing Algorithm - Steps
Distance_Vector_Routing ( )
{
// Initialize (create initial vectors for the node)
D[ myself ] = 0
for (y = 1 to N)
{
if (y is a neighbor)
D[y] = c[ myself ][ y ]
else
D[y] = ∞
}
Send vector {D[1], D[2], ..., D[N]} to all neighbors
14. 14
Distance Vector Routing Algorithm - Steps
…
// Update (improve the vector with the vector received from a neighbor)
repeat (forever)
{
wait (for a vector Dw
from a neighbor w or any change in the link)
for (y = 1 to N)
{
D[y] = min ( D[y], (c[myself ][w] + Dw
[y ]) ) // Bellman-Ford equation
}
if (any change in the vector)
send vector {D[1], D[2], ..., D[N]} to all neighbors
}
} // End of Distance Vector
15. 15
Distance Vector Routing Algorithm - Example
● By applying the algorithm, find the routing table maintained at node B.
Initial Distance Vectors Final Distance Vectors Routing Table of B
A B C D E F G
A 0 1 1 ∞ 1 1 ∞
B 1 0 1 ∞ ∞ ∞ ∞
C 1 1 0 1 ∞ ∞ ∞
D ∞ ∞ 1 0 ∞ ∞ 1
E 1 ∞ ∞ ∞ 0 ∞ ∞
F 1 ∞ ∞ ∞ ∞ 0 1
G ∞ ∞ ∞ 1 ∞ 1 0
A B C D E F G
A 0 1 1 2 1 1 2
B 1 0 1 2 2 2 3
C 1 1 0 1 2 2 2
D 2 2 1 0 3 2 1
E 1 2 2 3 0 2 3
F 1 2 2 2 3 0 1
G 2 3 2 1 3 1 0
B Hop
A 1 A
B 0 B
C 1 C
D 2 C
E 2 A
F 2 A
G 3 A
16. 16
Distance Vector Routing Algorithm
● Problem
○ Decrease in cost (good news) propagates quickly, but increase in cost
(bad news) propagates very slowly.
○ Link breakage will be propagated slowly.
○ May lead to Count to Infinity problem.
● Solution
○ Split Horizon
■ B sends a part of its distance vector to A, which contains the costs
that are not obtained from A.
○ Poison Reverse:
■ B sends its distance vector to A with all entries obtained from A as
infinity.
17. 17
Link State (LS) Routing Algorithm
● States of the links are defined by their cost.
● If the cost is infinity, it means that the link is broken or doesn’t exist.
● Steps:
1. First, each node finds the identity of all of its neighbors and the cost to
them through greetings messages and makes a Link State Packet
(LSP) with these two information.
2. Each node sends its LSP to all the interfaces except through which the
information came. This process is called flooding.
18. 18
Link State (LS) Routing Algorithm
3. On receiving an LSP, each node compares it with its own LSP and
keep the newer one discarding the other.
19. 19
Link State (LS) Routing Algorithm
4. Within some time, the flooding stops as all the nodes gets the
information about all the other nodes in the network. Then each node
creates a Link State Database (LSDB) with this information and the
LSDB will be the same for all the nodes.
20. 20
Link State (LS) Routing Algorithm
4. Each node then computes its own least cost tree using Dijkstra's
Algorithm. The algorithm is;
Dijkstra’s Algorithm ( )
{ // Initialization
Tree = {root}
// Tree is made only of the root
for (y = 1 to N) // N is the number of nodes
{
if (y is the root)
D[y] = 0 // D[y] is shortest distance from root to node y
else if (y is a neighbor)
D[y] = c[root][y] // c[x][y] is cost between nodes x and y in LSDB
else
D[y] = ∞
}
(1) The node chooses itself as the root of the
tree, creating a tree with a single node, and
sets the total cost of each node based on the
information in the LSDB.
21. 21
Link State (LS) Routing Algorithm
4. Each node then computes its own least cost tree using Dijkstra's
Algorithm. The algorithm is;
…
// Calculation
repeat
{
find a node w, with D[w] minimum among all nodes not in the Tree
Tree = Tree ∪ {w} // Add w to tree
// Update distances for all neighbors of w
for (every node x, which is a neighbor of w and not in the Tree)
D[x] = min { D[x], (D[w] + c[w][x]) }
} until (all nodes included in the Tree)
} // End of Dijkstra
(2) The node selects one node, among all
nodes not in the tree, which is closest to the
root, and adds this to the tree. After this, the
cost of all other nodes not in the tree needs
to be updated. This process is repeated until
all the nodes are added to the tree.
23. 23
Path-Vector (PV) Routing
● Not based on least-cost path, but best-cost path.
● Does not have the drawbacks of DV and LS routing.
● Mainly used by Internet Service Providers (ISP).
● Used when certain policies are to be imposed on routers; such as to
avoid some path.
● The best route is determined by the source using the policy it imposes on
the route. In other words, the source can control the path.
● Thus each router has its own spanning tree .
● A source may apply several policies at the same time.
24. 24
Path-Vector (PV) Routing Algorithm
1. When a node is booted up, it creates a path vector based on the
information from its neighbors through greetings; then passes these path
vectors to its neighbors.
Path vectors at booting time
25. 25
Path-Vector (PV) Routing Algorithm
2. Then the neighbors update their vectors by using these informations and so
on.
The updation occurs based on the equation;
Path(x, y) = best { Path(x, y), [(x + Path( v , y)] } for all v ’s in the internet.
The operator (+) means to add x to the beginning of the path.
3. If Path (v, y) includes x, that path is discarded to avoid a loop in the path.
26. 26
Path-Vector (PV) Routing Algorithm
Path_Vector_Routing ( )
{ // Initialization
for (y = 1 to N)
{
if (y is myself)
Path[y] = myself
else if (y is a neighbor)
Path[y] = myself + neighbor node
else
Path[y] = empty
}
Send vector { Path[1], Path[2], ..., Path[y] } to all neighbors
27. 27
Path-Vector (PV) Routing Algorithm
// Update
repeat (forever)
{
wait (for a vector Path w from a neighbor w)
for (y = 1 to N)
{
if (Path w includes myself)
discard the path // Avoid any loop
else
Path[y] = best {Path[y], (myself + Path w [y])}
}
If (there is a change in the vector)
Send vector {Path[1], Path[2], ..., Path[y]} to all neighbors
}
} // End of Path Vector
28. 28
Unicasting, Multicasting and Broadcasting
Unicasting:
● One source and one destination network.
● One to one relationship between source and destination.
● Each router in the path of the datagram forward the packet to one and only
one of its interfaces.
29. 29
Unicasting, Multicasting and Broadcasting
Multicasting:
● One source and a group of destinations.
● The relationship is one to many.
● The source address is a unicast address, but the destination address is a
group address.
32. 32
Unicasting, Multicasting and Broadcasting
Multicasting Applications:
❏ Access to Distributed Databases
❏ Information Dissemination: Different types of business groups
❏ Teleconferencing.
❏ Distance Learning.
33. 33
Unicasting, Multicasting and Broadcasting
Broadcasting
● One-to-all communication.
● A host sends a packet to all hosts in an internet.
● Not generally used as it may create a huge volume of traffic and use a
huge amount of bandwidth.
● Partial broadcasting is done in the Internet.
● Controlled broadcasting may also be done in a domain mostly as a step to
achieve multicasting.