Patent application number | Description | Published |
20140043428 | APPARATUS AND METHOD FOR PROVIDING MEDIA SERVICES WITH TELEPRESENCE - A system that incorporates teachings of the present disclosure may include, for example, obtaining first images that are captured by a first camera system at a first location associated with a live presentation by the first user, transmitting first video content representative of the first images over a network for presentation by a group of other processors that are each at one of a group of other locations associated with corresponding other users, receiving second video content representative of second images that are associated with each of the other users, and presenting the second video content in a telepresence configuration that simulates each of the other users being present in an audience at the first location. Other embodiments are disclosed. | 02-13-2014 |
20140109126 | METHOD AND APPARATUS FOR MANAGING PERSONAL CONTENT - A system that incorporates teachings of the present disclosure may include, for example, obtaining first personal content associated with a first mobile communication device, obtaining recognition information associated with a target individual where the recognition information is associated with at least one of images of the target individual and audio of the target individual, obtaining second personal content associated with the first mobile communication device, and performing recognition analysis on the second personal content using the recognition information to detect the target individual being present in second images of the second personal content, where a communication device associated with the target individual is provided with access to the second images. Other embodiments are disclosed. | 04-17-2014 |
20140150028 | Method and System for Content Recording and Indexing - The present invention relates to a method for a control point of initiating actions on a device in a communication network comprising at least two control points both adapted to control said device. Further, the present invention relates to a method for a device of initiating actions on said device in a communication network comprising at least two control points both adapted to control said device. Further, the present invention relates to a control point of initiating actions on a device in a communication network comprising at least two control point both adapted to control said device. Further, the present invention relates to a device in a communication network comprising at least two control points both adapted to control said device based on action requests received from a control point along with control point identification. | 05-29-2014 |
20140164403 | System And Method For Generating Media Bookmarks - Disclosed herein are systems, methods, and computer-readable media for transmedia video bookmarks, the method comprising receiving a first place marker and a second place marker for a segment of video media, extracting metadata from the video media between the first and second place markers, normalizing the extracted metadata, storing the normalized metadata, first place marker, and second place marker as a video bookmark, and retrieving the media represented by the video bookmark upon request from a user. Systems can aggregate video bookmarks from multiple sources and refine the first place marker and second place marker based on the aggregated video bookmarks. Metadata can be extracted by analyzing text or audio annotations. Metadata can be normalized by generating a video thumbnail representing the video media between the first place marker and the second place marker. Multiple video bookmarks may be searchable by metadata or by the video thumbnail visually. | 06-12-2014 |
20140189773 | METHOD AND APPARATUS FOR GENERATING MEDIA CONTENT - A system that incorporates teachings of the present disclosure may include, for example, a storage medium including computer instructions to receive sensory information at a media device from a first mobile communication device where the first mobile communication device obtains at least a portion of the sensory information from at least one second mobile communication device in response to a broadcast by the first mobile communication device of a wireless signal representing a notice to obtain the sensory information, where the sensory information is associated with an environment of the first mobile communication device, and where the sensory information comprises images of the environment. The computer instructions can enable generating a plurality of personal content utilizing at least a portion of the sensory information, where each of the plurality of personal content includes some of the images captured at different perspectives. Other embodiments are disclosed. | 07-03-2014 |
20140244663 | METHOD AND APPARATUS FOR STAGED CONTENT ANALYSIS - A system that incorporates teachings of the present disclosure may include, for example network device having a controller to receive multiple streams of content for portions of a multimedia work, perform a high level analysis for features in each of the streams for the multimedia work, perform a specialized analysis on the portion having a detected general feature to generate a content analysis output, correlate the content analysis output with other content analysis of the multimedia work, and output a weighted content description based on the correlation function. Other embodiments are disclosed. | 08-28-2014 |
20140301609 | Method and Apparatus for Automated Analysis and Identification of a Person in Image and Video Content - A method, apparatus, and computer readable medium for identifying a person in an image includes an image analyzer. The image analyzer determines the content of an image such as a person, location, and object shown in the image. A person in the image may be identified based on the content and event data stored in a database. Event data includes information concerning events and related people, locations, and objects determined from other images and information. Identification metadata is generated and linked to each analyzed image and comprises information determined during image analysis. Tags for images are generated based on identification metadata. The event database can be queried to identify particular people, locations, objects, and events depending on a user's request. | 10-09-2014 |
20140325033 | SYSTEM AND METHOD FOR ADAPTIVE CONTENT RENDITION - Disclosed herein are systems, methods, and computer readable-media for adaptive content rendition, the method comprising receiving media content for playback to a user, adapting the media content for playback on a first device in the user's first location, receiving a notification when the user changes to a second location, adapting the media content for playback on a second device in the second location, and transitioning media content playback from the first device to second device. One aspect conserves energy by optionally turning off the first device after transitioning to the second device. Another aspect includes playback devices that are “dumb devices” which receive media content already prepared for playback, “smart devices” which receive media content in a less than ready form and prepare the media content for playback, or hybrid smart and dumb devices. A single device may be substituted by a plurality of devices. Adapting the media content for playback is based on a user profile storing user preferences and/or usage history in one aspect. | 10-30-2014 |
20140362997 | System and Method for Playing Media - A system, computer-implemented method, and tangible computer-readable media for media playback. The method includes receiving a request from a user to play a media asset, detecting capabilities of the playback device, detecting playback environment acoustic characteristics, optimizing media playback settings for the playback device and the playback environment characteristics, preparing the media asset for playback on the playback device, and transferring the prepared media asset to the playback device for playback. The method can further transfer optimized playback settings to the playback device. Media asset preparation can be based at least in part on the optimized playback settings. A playback profile can store environment characteristics and playback device capabilities. The method continuously detects changes in the playback environment characteristics, and optimizes media playback settings when detected changes exceed a threshold. | 12-11-2014 |
20150091899 | Method and Device For Edge Shape Enforcement For Visual Enhancement of Depth Image Based Rendering of A Three-Dimensional Video Stream - A method for edge correction of images of a three-dimensional video content, the video content including at least one original view image and at least one depth or disparity map, the method including the following steps: detecting edges in at least one original view image for obtaining original edges; warping the original edges according to the depth or disparity map; detecting a set of warped edges altered by the warping process; and correcting the altered edges for obtaining corrected edges. | 04-02-2015 |
20150097770 | METHOD AND APPARATUS FOR CONTROLLING MULTI-EXPERIENCE TRANSLATION OF MEDIA CONTENT - A method or apparatus for controlling a media device using gestures may include, for example, modifying media content to generate first updated media content according to a comparison of first information descriptive of a first environment of the source device to second information descriptive of a second environment of the recipient device, capturing images of a gesture, identifying a command from the gesture, and modifying the first updated media content to generate second updated media content according to the command. Other embodiments are disclosed. | 04-09-2015 |
20150097835 | METHOD AND APPARATUS FOR MULTI-EXPERIENCE ADAPTATION OF MEDIA CONTENT - A method or apparatus that incorporates teachings of the present disclosure may include, for example, a method for adapting media content of a source device for a recipient device. Characteristics of a first environment of a source device and of a second environment of a recipient can be identified. At least one difference between the characteristics of the first environment of the source device and the characteristics of the second environment of the recipient device can be determined. A presentation of media content can be modified according to the at least one difference between the characteristics of the first environment of the source device and the characteristics of the second environment of the recipient device. Other embodiments are disclosed. | 04-09-2015 |
20150138305 | APPARATUS AND METHOD FOR MANAGING TELEPRESENCE SESSIONS - A system that incorporates teachings of the present disclosure may include, for example, determining a latency area of a network based on latency testing, identifying a configuration of a network route of a telepresence session exchanging media content between media processors of first and second users at first and second locations based on the latency area, determining a first latency associated with a first presentation of the media content at the first location, determining a second latency associated with a second presentation of the media content at the second location, and determining one of a first delay for the first presentation, a second delay for the second presentation or both based on one of the first latency, the second latency or both. Other embodiments are disclosed. | 05-21-2015 |
20150146697 | CLIENT-SIDE SCHEDULING FOR MEDIA TRANSMISSIONS ACCORDING TO CLIENT DEVICE STATES - A mobile device that incorporates the subject disclosure may perform, for example, obtaining performance characteristics for network segments of a network where the network segments are selected from a group of network segments of the network based on a trajectory of the mobile device. The mobile device can monitor power state transitions of the mobile device, and can predict a future power state of the mobile device based on the monitoring of the power state transitions. The mobile device can determine a target time for sending a request for transmission of a data packet over the network where the target time is determined based on the performance characteristics for the network segments and based on the future power state of the mobile device. The mobile device can schedule a time for sending the request for transmission according to the target time. Other embodiments are disclosed. | 05-28-2015 |
20150149590 | SERVER-SIDE SCHEDULING FOR MEDIA TRANSMISSIONS - A server that incorporates the subject disclosure may perform, for example, operations including monitoring current transport characteristics of an internet protocol network communicatively coupled to the server and to a mobile device. Data packets are transported to the device according to a dynamic adaptive streaming over hypertext transfer protocol. A future transport characteristic of the network is predicted according to the trajectory of the device. A request is received from the device for transmission of a data packet, and a time for fulfilling the request is scheduled according to the current and predicted transport characteristics. The operations further comprise selecting a transmission rate for transmission of the data packet to the mobile device responsive to detecting the time for fulfilling the request. The device performs buffering of the data packet for a future presentation of the media content. Other embodiments are disclosed. | 05-28-2015 |
20150149591 | CLIENT-SIDE LOCATION AWARE NETWORK SELECTION - A mobile device that incorporates the subject disclosure may perform, for example, operations including requesting transport characteristics of a network coupled to a server and to the device according to a trajectory of the device. Data packets are transported to the mobile device according to a dynamic adaptive streaming over hypertext transfer protocol. The operations include obtaining the current transport characteristics of the network and predicting a future transport characteristic of the network, according to the trajectory of the device. A time is scheduled for sending a request to the server for transmission over the network of a data packet. The time can be scheduled according to the current and future transport characteristics of the network, to avoid degradation in quality of media content presented by the device. The data packet received responsive to sending the request is buffered for a future presentation of the media content. Other embodiments are disclosed. | 05-28-2015 |
20150149592 | SERVER-SIDE SCHEDULING FOR MEDIA TRANSMISSIONS ACCORDING TO CLIENT DEVICE STATES - A system embodying the subject disclosure includes a memory to store instructions. A controller coupled to the memory, responsive to executing the instructions, can perform operations including obtaining performance characteristics for segments of a network; the segments are selected based on a trajectory of a mobile device coupled to the network. The controller can predict future transport and segment characteristics based on the performance characteristics. The controller can receive a request from the mobile device for transmission of a data packet over the network. The controller can monitor a power state of the mobile device and predict a future power state of the mobile device. The controller can determine a target time for fulfilling the request, based on the future power state and the future transport and segment characteristics. The controller can schedule a time for fulfilling the request according to the target time. Other embodiments are disclosed. | 05-28-2015 |
20150195627 | SYSTEM AND METHOD FOR TEMPORALLY ADAPTIVE MEDIA PLAYBACK - Disclosed herein are systems, methods, and computer readable-media for temporally adaptive media playback. The method for adaptive media playback includes estimating or determining an amount of time between a first event and a second event, selecting media content to fill the estimated amount of time between the first event and the second event, and playing the selected media content possibly at a reasonably different speed to fit the time interval. One embodiment includes events that are destination-based or temporal-based. Another embodiment includes adding, removing, speeding up, or slowing down selected media content in order to fit the estimated amount of time between the first event and the second event or to modify the selected media content to adjust to an updated estimated amount of time. Another embodiment bases selected media content on a user or group profile. | 07-09-2015 |
20150215603 | APPARATUS AND METHOD FOR PROVIDING MEDIA CONTENT - A system that incorporates teachings of the present disclosure may, for example, receive a request for a telepresence seat at an event, obtain media content comprising event images of the event that are captured by an event camera system, receive images that are captured by a camera system at a user location, and provide the media content and video content representative of the images to a processor for presentation at a display device utilizing a telepresence configuration that simulates the first and second users being present at the event, where the providing of the first and second video content establishes a communication session between the first and second users. Other embodiments are disclosed. | 07-30-2015 |
20150229691 | APPARATUS AND METHOD FOR MANAGING MEDIA CONTENT - A system that incorporates teachings of the present disclosure may include, for example, a server having a controller to monitor for media content from a first source that is distributable where the media content is adjusted for distribution to a plurality of communication devices that are associated with a user and a portion of the plurality of communication devices use different communication protocols from another portion of the plurality of communication devices, obtain content metadata from the media content, receive a request for information associated with the media content from a first communication device of the plurality of communication devices of the user, compile the information from the content metadata based at least in part on a user profile associated with the user, and transmit the information to the first communication device. Other embodiments are disclosed. | 08-13-2015 |
20150235654 | SPEAKER ASSOCIATION WITH A VISUAL REPRESENTATION OF SPOKEN CONTENT - Speaker content generated in an audio conference is selectively visually represented. A profile for each audience member who listen to an audio conference is obtained. Speaker content from audio conference participants who speak in the audio conference is monitored. The speaker content from each of the audio conference participants is analyzed. Based on the analyzing and on the profiles for each of the plurality of audience members, visual representations of the speaker content to present to the audience members are identified. Visual representations of the speaker content are generated based on the analyzing. Different visual representations of the speaker content are presented to different audience members based on the analyzing and identifying. | 08-20-2015 |
20150235671 | System and Method for Adaptive Media Playback Based on Destination - Disclosed herein are systems, methods, and computer readable-media for adaptive media playback based on destination. The method for adaptive media playback comprises determining one or more destinations, collecting media content that is relevant to or describes the one or more destinations, assembling the media content into a program, and outputting the program. In various embodiments, media content may be advertising, consumer-generated, based on real-time events, based on a schedule, or assembled to fit within an estimated available time. Media content may be assembled using an adaptation engine that selects a plurality of media segments that fit in the estimated available time, orders the plurality of media segments, alters at least one of the plurality of media segments to fit the estimated available time, if necessary, and creates a playlist of selected media content containing the plurality of media segments. | 08-20-2015 |
20150244790 | Opportunistic Crowd-Based Service Platform - A method and apparatus for providing an opportunistic crowd based service platform is disclosed. A mobile sensor device is identified based on a current location and/or other qualities, such as intrinsic properties, previous sensor data, or demographic data of an associated user of the mobile sensor device. Data is collected from the mobile sensor device. The data collected from the mobile sensor device is aggregated with data collected from other sensor devices, and content generated based on the aggregated data is delivered to a user device. | 08-27-2015 |
20150249863 | Method and Apparatus for Distributed Display Monitoring - A method for monitoring a monitored display monitors data to be output from a monitored display. The monitored data is analyzed to generate one or more content identifiers. The content identifiers are compared to a set of rules to determine if the monitored data should be blocked from being output or if an alert should be transmitted to a supervisor device. One or more supervisor devices may be used to respond to alerts and may also be used to control the output of the monitored display. | 09-03-2015 |
20150271223 | METHOD AND APPARATUS FOR MULTI-EXPERIENCE METADATA TRANSLATION OF MEDIA CONTENT WITH METADATA - A method or apparatus that incorporates teachings of the present disclosure may include, for example, a method for retrieving a plurality of sensory information from an environment of a device. A digital representation of the environment of the device is identified corresponding to the plurality of sensory information from the environment of the device. A media presentation element of the device associated with media content of the device is identified. A user interface of the media presentation element is adapted to modify a presentation of the media content by the media presentation element of the device according to the digital representation of the environment of the device. Other embodiments are disclosed. | 09-24-2015 |
20150278232 | System And Method For Generating Media Bookmarks - Disclosed herein are systems, methods, and computer-readable media for transmedia video bookmarks, the method comprising receiving a first place marker and a second place marker for a segment of video media, extracting metadata from the video media between the first and second place markers, normalizing the extracted metadata, storing the normalized metadata, first place marker, and second place marker as a video bookmark, and retrieving the media represented by the video bookmark upon request from a user. Systems can aggregate video bookmarks from multiple sources and refine the first place marker and second place marker based on the aggregated video bookmarks. Metadata can be extracted by analyzing text or audio annotations. Metadata can be normalized by generating a video thumbnail representing the video media between the first place marker and the second place marker. Multiple video bookmarks may be searchable by metadata or by the video thumbnail visually. | 10-01-2015 |
20150312642 | METHOD AND SYSTEM FOR CONTENT RECORDING AND INDEXING - The present invention relates to a method for a control point of initiating actions on a device in a communication network comprising at least two control points both adapted to control said device. Further, the present invention relates to a method for a device of initiating actions on said device in a communication network comprising at least two control points both adapted to control said device. Further, the present invention relates to a control point of initiating actions on a device in a communication network comprising at least two control point both adapted to control said device. Further, the present invention relates to a device in a communication network comprising at least two control points both adapted to control said device based on action requests received from a control point along with control point identification. | 10-29-2015 |
20150339517 | Method and Apparatus for Automated Analysis and Identification of a Person in Image and Video Content - A method, apparatus, and computer readable medium for identifying a person in an image includes an image analyzer. The image analyzer determines the content of an image such as a person, location, and object shown in the image. A person in the image may be identified based on the content and event data stored in a database. Event data includes information concerning events and related people, locations, and objects determined from other images and information. Identification metadata is generated and linked to each analyzed image and comprises information determined during image analysis. Tags for images are generated based on identification metadata. The event database can be queried to identify particular people, locations, objects, and events depending on a user's request. | 11-26-2015 |
20150378544 | Automated Content Detection, Analysis, Visual Synthesis and Repurposing - A content summary is generated by determining a relevance of each of a plurality of scenes, removing at least one of the plurality of scenes based on the determined relevance, and creating a scene summary based on the plurality of scenes. The scene summary is output to a graphical user interface, which may be a three-dimensional interface. The plurality of scenes is automatically detected in a source video and a scene summary is created with user input to modify the scene summary. A synthetic frame representation is formed by determining a sentiment of at least one frame object in a plurality of frame objects and creating a synthetic representation of the at least one frame object based at least in part on the determined sentiment. The relevance of the frame object may be determined and the synthetic representation is then created based on the determined relevance and the determined sentiment. | 12-31-2015 |
20160006598 | MULTI-DEVICE COMPLEXITY BROKER - A brokering device that manages multimedia information includes an interface device having access to a network and a multimedia service provider. The interface device enables selection of multimedia information from the network, and provides the selected multimedia information to a plurality of locations without requiring the user to specify a protocol associated with the multimedia information. | 01-07-2016 |
20160006985 | APPARATUS AND METHOD FOR MANAGING TELEPRESENCE SESSIONS - A system that incorporates teachings of the present disclosure may include, receiving first and second media content portraying images of first and second users, wherein the first and second users participate in a conference call. Joint media content is generated of the conference call including the images of the first and second users, that when presented at a display of a third user includes the images of the first and second users. Speech of the first user directed to the second user is detected and, in response, the image of the first user of the joint media content is adjusted to obtain a rotated image of the first user. The joint media content includes the rotated image of the first user and the image of the second user, that when presented at the display of the third user portrays the first user turned toward the second user. | 01-07-2016 |
20160029064 | METHOD AND APPARATUS FOR GENERATING MEDIA CONTENT - A system that incorporates teachings of the present disclosure may include, for example, a storage medium including computer instructions to receive sensory information at a media device from a first mobile communication device where the first mobile communication device obtains at least a portion of the sensory information from at least one second mobile communication device in response to a broadcast by the first mobile communication device of a wireless signal representing a notice to obtain the sensory information, where the sensory information is associated with an environment of the first mobile communication device, and where the sensory information comprises images of the environment. The computer instructions can enable generating a plurality of personal content utilizing at least a portion of the sensory information, where each of the plurality of personal content includes some of the images captured at different perspectives. Other embodiments are disclosed. | 01-28-2016 |
20160034044 | METHOD AND APPARATUS FOR CONTROLLING MULTI-EXPERIENCE TRANSLATION OF MEDIA CONTENT - A method or apparatus for controlling a media device using gestures may include, for example, modifying media content to generate first updated media content according to a comparison of first information descriptive of a first environment of the source device to second information descriptive of a second environment of the recipient device, capturing images of a gesture, identifying a command from the gesture, and modifying the first updated media content to generate second updated media content according to the command. Other embodiments are disclosed. | 02-04-2016 |
20160044133 | SERVER-SIDE SCHEDULING FOR MEDIA TRANSMISSIONS ACCORDING TO CLIENT DEVICE STATES - A system embodying the subject disclosure includes a memory to store instructions. A controller coupled to the memory, responsive to executing the instructions, can perform operations including obtaining performance characteristics for segments of a network; the segments are selected based on a trajectory of a mobile device coupled to the network. The controller can predict future transport and segment characteristics based on the performance characteristics. The controller can receive a request from the mobile device for transmission of a data packet over the network. The controller can monitor a power state of the mobile device and predict a future power state of the mobile device. The controller can determine a target time for fulfilling the request, based on the future power state and the future transport and segment characteristics. The controller can schedule a time for fulfilling the request according to the target time. Other embodiments are disclosed. | 02-11-2016 |
20160080690 | DIGITALLY-GENERATED LIGHTING FOR VIDEO CONFERENCING APPLICATIONS - A method of improving the lighting conditions of a real scene or video sequence. Digitally generated light is added to a scene for video conferencing over telecommunication networks. A virtual illumination equation takes into account light attenuation, lambertian and specular reflection. An image of an object is captured, a virtual light source illuminates the object within the image. In addition, the object can be the head of the user. The position of the head of the user is dynamically tracked so that an three-dimensional model is generated which is representative of the head of the user. Synthetic light is applied to a position on the model to form an illuminated model. | 03-17-2016 |
20160094864 | METHOD AND APPARATUS FOR MULTI-EXPERIENCE TRANSLATION OF MEDIA CONTENT WITH SENSOR SHARING - A method and apparatus incorporates teachings of the present disclosure and may include, for example, a method including detecting at least one of a plurality of sensor data sources for capturing sensory data from a physical environment of the source device, receiving from the at least one of the plurality of sensor data sources sensory information representing the sensory data from the physical environment of the source device, identifying a plurality of characteristics of the physical environment of the source device from the received sensory information, sending to a second device media content and the sensory information representing the plurality of characteristics of the physical environment of the source device. Other embodiments are disclosed. | 03-31-2016 |
20160142698 | APPARATUS AND METHOD FOR PROVIDING MEDIA CONTENT - A system that incorporates teachings of the present disclosure may, for example, receive a request for a telepresence seat at an event, obtain media content comprising event images of the event that are captured by an event camera system, receive images that are captured by a camera system at a user location, and provide the media content and video content representative of the images to a processor for presentation at a display device utilizing a telepresence configuration that simulates the first and second users being present at the event, where the providing of the first and second video content establishes a communication session between the first and second users. Other embodiments are disclosed. | 05-19-2016 |
Patent application number | Description | Published |
20120151307 | CHECKSUM VERIFICATION ACCELERATOR - Disclosed is a method and system for validating a data packet by a network processor supporting a first network protocol and a second network protocol and utilizing shared hardware. The network processor receives a data packet; identifies a network packet protocol for the data packet; and processes the data packet according to the network packet protocol comprising: updating a first register with a first partial packet length specific to the first network protocol; updating a second register with a second partial packet length specific to the second network protocol; and updating a third register with a first checksum computed from fields independent of the network protocol. The system produces a second checksum utilizing a function that combines values from the first register, the second register, and the third register. The system validates the data packet by comparing the data packet checksum to the second checksum. | 06-14-2012 |
20120300630 | IDENTIFICATION OF QOS CLASSIFICATION BASED ON PACKET ATTRIBUTES - A method, a system, and a computer program product is disclosed for identifying a quality of service (QoS) classification of a packet in a network by a network processor. The method comprising: providing a table wherein a priority value with a maximum of N values is used as an index into the table to retrieve a QoS classification having a maximum of M values with M less than N; receiving a data packet in a stream of data packets; extracting at least two priority indicator values from the packet; converting the at least two priority indicator values into a priority value; utilizing the priority value as an index into the table; extracting the entry in the table corresponding to the priority value as the QoS classification of the packet; and utilizing the QoS classification for subsequent processing of the data packet. | 11-29-2012 |
20130132535 | Network Data Processsing System - A method and apparatus for processing of data packets by a data processing component comprising a plurality of processing resources. A metric value for a current configuration of the processing resources that are processing the data packets is identified. A new configuration of the processing resources is selected using the metric value. The current configuration of the processing resources is changed to the new configuration and data packets are distributed to the new configuration for processing as the data packets are received. | 05-23-2013 |
20130163419 | FLEXIBLE AND SCALABLE DATA LINK LAYER FLOW CONTROL FOR NETWORK FABRICS - A network fabric may divide a physical connection into a plurality of VLANs as defined by IEEE 802.1Q. Moreover, many network fabrics use Priority Flow Control to identify and segregate network traffic based on different traffic classes or priorities. Current routing protocols define only eight traffic classes. In contrast, a network fabric may contain thousands of unique VLANs. When network congestion occurs, network devices (e.g., switches, bridges, routers, servers, etc.) can negotiate to pause the network traffic associated with one of the different traffic classes. Pausing the data packets associated with a single traffic class may also stop the data packets associated with thousands of VLANs. The embodiments disclosed herein permit a network fabric to individually pause VLANs rather than entire traffic classes. | 06-27-2013 |
20130163611 | FLEXIBLE AND SCALABLE ENHANCED TRANSMISSION SELECTION METHOD FOR NETWORK FABRICS - IEEE 802.1Q and Enhanced Transmission Selection provide only eight different traffic classes that may be used to control bandwidth in a particular physical connection (or link). Instead of relying only on these eight traffic classes to manage bandwidth, the embodiments discussed herein disclose using an Enhanced Transmission Selection scheduler that permits a network device to set the bandwidth for an individual virtual LAN. Allocating bandwidth in a port based on a virtual LAN ID permits a network device to allocate bandwidth to, e.g., millions of unique virtual LANs. Thus, this technique may increase the granular control of the network fabric and its performance. | 06-27-2013 |
20130166753 | FLEXIBLE AND SCALABLE ENHANCED TRANSMISSION SELECTION METHOD FOR NETWORK FABRICS - IEEE 802.1Q and Enhanced Transmission Selection provide only eight different traffic classes that may be used to control bandwidth in a particular physical connection (or link). Instead of relying only on these eight traffic classes to manage bandwidth, the embodiments discussed herein disclose using an Enhanced Transmission Selection scheduler that permits a network device to set the bandwidth for an individual virtual LAN. Allocating bandwidth in a port based on a virtual LAN ID permits a network device to allocate bandwidth to, e.g., millions of unique virtual LANs. Thus, this technique may increase the granular control of the network fabric and its performance. | 06-27-2013 |
20130166773 | Flexible and scalable data link layer flow control for network fabrics - A network fabric may divide a physical connection into a plurality of VLANs as defined by IEEE 802.1Q. Moreover, many network fabrics use Priority Flow Control to identify and segregate network traffic based on different traffic classes or priorities. Current routing protocols define only eight traffic classes. In contrast, a network fabric may contain thousands of unique VLANs. When network congestion occurs, network devices (e.g., switches, bridges, routers, servers, etc.) can negotiate to pause the network traffic associated with one of the different traffic classes. Pausing the data packets associated with a single traffic class may also stop the data packets associated with thousands of VLANs. The embodiments disclosed herein permit a network fabric to individually pause VLANs rather than entire traffic classes. | 06-27-2013 |
20130182706 | REQUESTING MULTICAST MEMBERSHIP INFORMATION IN A DISTRIBUTED SWITCH IN RESPONSE TO A MISS EVENT - Apparatuses and methods to request multicast membership information in a distributed switch are provided. A particular method may include requesting multicast membership information of a group identified by a multicast destination address in a distributed switch. The distributed switch may include a plurality of distributed switch elements with a plurality of switch forwarding units. The method may generate a miss event indicating that the multicast destination address is unregistered in a switch forwarding unit of a distributed switch element and there is a need for the multicast membership information. The method may also request the multicast membership information of the multicast destination address in response to the miss event. The method may further initiate a query for the multicast membership information of the multicast destination address in response to the request. | 07-18-2013 |
20130182707 | MANAGING A GLOBAL FORWARDING TABLE IN A DISTRIBUTED SWITCH - Apparatuses and methods to manage a global forwarding table in a distributed switch are provided. A particular method may include managing a global forwarding table in a distributed switch. The distributed switch may include a plurality of switch forwarding units. The method may start a timer for an entry in the global forwarding table, and the entry may include a multicast destination address and corresponding multicast membership information. The method may also, in response to expiration of the timer of the entry, check at least one hit status to determine whether at least one switch forwarding unit of the plurality of switch forwarding units has forwarded multicast data to the corresponding multicast membership information of the multicast destination address of the entry. The method may further determine whether the entry is a cast-out candidate based on the hit status. | 07-18-2013 |
20130194923 | CONVERGED ENHANCED ETHERNET NETWORK - A system to improve a Converged Enhanced Ethernet network may include a controller having a computer processor connected to a layer 2 endpoint buffer. The system may also include a manager executing on the controller to monitor the layer 2 endpoint buffer by determining buffer data packet occupancy and/or rate of change in the buffer data packet occupancy. The system may further include a reporter to notify a congestion source of the layer 2 endpoint buffer based upon the buffer data packet occupancy and/or rate of change in the buffer data packet occupancy. | 08-01-2013 |
20130194946 | CONVERGED ENHANCED ETHERNET NETWORK - A system to improve a Converged Enhanced Ethernet network may include a controller having a computer processor connected to a layer 2 endpoint buffer. The system may also include a manager executing on the controller to monitor the layer 2 endpoint buffer by determining buffer data packet occupancy and/or rate of change in the buffer data packet occupancy. The system may further include a reporter to notify a congestion source of the layer 2 endpoint buffer based upon the buffer data packet occupancy and/or rate of change in the buffer data packet occupancy. | 08-01-2013 |
20130194964 | SYNCHRONIZING ROUTING TABLES IN A DISTRIBUTED NETWORK SWITCH - Techniques are provided for routing table synchronization for a distributed network switch. In one embodiment, a first frame having a source address and a destination address is received. If no routing entry for the source address is found in a routing table of a first switch module, routing information is determined for the source address and a routing entry is generated. An indication is sent to a second switch module, to request a routing entry for the source address to be generated in the second switch module, based on the routing information. | 08-01-2013 |
20130195105 | SYNCHRONIZING ROUTING TABLES IN A DISTRIBUTED NETWORK SWITCH - Techniques are provided for routing table synchronization for a distributed network switch. In one embodiment, a first frame having a source address and a destination address is received. If no routing entry for the source address is found in a routing table of a first switch module, routing information is determined for the source address and a routing entry is generated. An indication is sent to a second switch module, to request a routing entry for the source address to be generated in the second switch module, based on the routing information. | 08-01-2013 |
20130208721 | PACKET ROUTING WITH ANALYSIS ASSIST FOR EMBEDDED APPLICATIONS SHARING A SINGLE NETWORK INTERFACE OVER MULTIPLE VIRTUAL NETWORKS - Techniques are provided for packet routing in a distributed network switch. The distributed network switch includes multiple switch modules operatively connected to one another, and each switch module includes multiple bridge elements and a management controller. In one embodiment, a shared interface routing (SIR) framework is provided that includes an analysis and bifurcation layer, at least one packet interface, and an analysis assist layer. A packet is received over a first logical network and via a physical port, the packet being destined for at least a first application executing on the management controller. The analysis assist layer analyzes the packet to determine a reason code to assign to the packet. The analysis and bifurcation layer then analyzes the packet based at least in part on the reason code. | 08-15-2013 |
20130208722 | PACKET ROUTING WITH ANALYSIS ASSIST FOR EMBEDDED APPLICATIONS SHARING A SINGLE NETWORK INTERFACE OVER MULTIPLE VIRTUAL NETWORKS - Techniques are provided for packet routing in a distributed network switch. The distributed network switch includes multiple switch modules operatively connected to one another, and each switch module includes multiple bridge elements and a management controller. In one embodiment, a shared interface routing (SIR) framework is provided that includes an analysis and bifurcation layer, at least one packet interface, and an analysis assist layer. A packet is received over a first logical network and via a physical port, the packet being destined for at least a first application executing on the management controller. The analysis assist layer analyzes the packet to determine a reason code to assign to the packet. The analysis and bifurcation layer then analyzes the packet based at least in part on the reason code. | 08-15-2013 |
20130242985 | MULTICAST BANDWIDTH MULTIPLICATION FOR A UNIFIED DISTRIBUTED SWITCH - The distributed switch may include a plurality of chips (i.e., sub-switches) on a switch module. These sub-switches may receive from a computing device connected to a Tx/Rx port a multicast data frame (e.g., an Ethernet frame) that designates a plurality of different destinations. Instead of simply using one egress connection interface to forward the copies of the data frame to each of the destinations sequentially, the sub-switch may use a plurality of a connection interfaces to transfer copies of the multicast data frame simultaneously. The port that receives the multicast data frame can borrow the connection interfaces (and associated hardware such as buffers) assigned to these other ports to transmit copies of the multicast data frame simultaneously. | 09-19-2013 |
20130242986 | MULTICAST TRAFFIC GENERATION USING HIERARCHICAL REPLICATION MECHANISMS FOR DISTRIBUTED SWITCHES - A distributed switch may include a hierarchy with one or more levels of surrogate sub-switches (and surrogate bridge elements) that enable the distributed switch to scale bandwidth based on the size of the membership of a multicast group. When a sub-switch receives a multicast data frame, it forwards the packet to one of the surrogate sub-switches. Each surrogate sub-switch may then forward the packet to another surrogate in a different hierarchical level or to a destination computing device. Because the surrogates may transmit the data frame in parallel using two or more connection interfaces, the bandwidth used to forward the multicast packet increases for each surrogate used. | 09-19-2013 |
20130242987 | DYNAMIC OPTIMIZATION OF A MULTICAST TREE HIERARCHY FOR A DISTRIBUTED SWITCH - A distributed switch may include a hierarchy with one or more levels of surrogate sub-switches (and surrogate bridge elements) that enable the distributed switch to scale bandwidth based on the size of the membership of a multicast group. Moreover, each surrogate may optimize the hierarchy according to one or more optimization criteria. For example, each surrogate in the hierarchy may have the necessary information to ensure that if the next surrogate in the hierarchy is unavailable, the data may be routed to a backup surrogate. The selected hierarchy may be further optimized by skipping surrogates (or a surrogate level) such that the data intended for a skipped surrogate is sent to a surrogate in a lower-level of the hierarchy. This may better utilize the connection interfaces in the transmitting sub-switches and eliminate any unnecessary surrogate-to-surrogate transfers. | 09-19-2013 |
20130242988 | DELIVERING MULTICAST FRAMES TO AGGREGATED LINK TRUNKS IN A DISTRIBUTED SWITCH - A distributed switch may include a plurality of sub-switches. These sub-switches may be arranged in a hierarchy that increases the available bandwidth for transmitting multicast data frames across the switch fabric. Moreover, the distributed switch may be compatible with link aggregation where multiple physical connections are grouped together to create an aggregated (logical) link. Link aggregation requires similar data frames to use the same data path when traversing the distributed switch. With a unicast data frame, the sub-switch in the distributed switch that receives the data frame typically identifies the destination port (during a process called link selection) and forwards the data frame to the sub-switch containing that port. However, with multicast data frames, instead of the receiving sub-switch performing link selection to determine the destination port, link selection may be done by a different sub-switch or not done at all. | 09-19-2013 |
20130242990 | DYNAMIC OPTIMIZATION OF A MULTICAST TREE HIERARCHY FOR A DISTRIBUTED SWITCH - A distributed switch may include a hierarchy with one or more levels of surrogate sub-switches (and surrogate bridge elements) that enable the distributed switch to scale bandwidth based on the size of the membership of a multicast group. Moreover, each surrogate may optimize the hierarchy according to one or more optimization criteria. For example, each surrogate in the hierarchy may have the necessary information to ensure that if the next surrogate in the hierarchy is unavailable, the data may be routed to a backup surrogate. The selected hierarchy may be further optimized by skipping surrogates (or a surrogate level) such that the data intended for a skipped surrogate is sent to a surrogate in a lower-level of the hierarchy. This may better utilize the connection interfaces in the transmitting sub-switches and eliminate any unnecessary surrogate-to-surrogate transfers. | 09-19-2013 |
20130242991 | DELIVERING MULTICAST FRAMES TO AGGREGATED LINK TRUNKS IN A DISTRIBUTED SWITCH - A distributed switch may include a plurality of sub-switches. These sub-switches may be arranged in a hierarchy that increases the available bandwidth for transmitting multicast data frames across the switch fabric. Moreover, the distributed switch may be compatible with link aggregation where multiple physical connections are grouped together to create an aggregated (logical) link. Link aggregation requires similar data frames to use the same data path when traversing the distributed switch. With a unicast data frame, the sub-switch in the distributed switch that receives the data frame typically identifies the destination port (during a process called link selection) and forwards the data frame to the sub-switch containing that port. However, with multicast data frames, instead of the receiving sub-switch performing link selection to determine the destination port, link selection may be done by a different sub-switch or not done at all. | 09-19-2013 |
20130242992 | MULTICAST TRAFFIC GENERATION USING HIERARCHICAL REPLICATION MECHANISMS FOR DISTRIBUTED SWITCHES - A distributed switch may include a hierarchy with one or more levels of surrogate sub-switches (and surrogate bridge elements) that enable the distributed switch to scale bandwidth based on the size of the membership of a multicast group. When a sub-switch receives a multicast data frame, it forwards the packet to one of the surrogate sub-switches. Each surrogate sub-switch may then forward the packet to another surrogate in a different hierarchical level or to a destination computing device. Because the surrogates may transmit the data frame in parallel using two or more connection interfaces, the bandwidth used to forward the multicast packet increases for each surrogate used. | 09-19-2013 |
20130242993 | MULTICAST BANDWIDTH MULTIPLICATION FOR A UNIFIED DISTRIBUTED SWITCH - The distributed switch may include a plurality of chips (i.e., sub-switches) on a switch module. These sub-switches may receive from a computing device connected to a Tx/Rx port a multicast data frame (e.g., an Ethernet frame) that designates a plurality of different destinations. Instead of simply using one egress connection interface to forward the copies of the data frame to each of the destinations sequentially, the sub-switch may use a plurality of a connection interfaces to transfer copies of the multicast data frame simultaneously. The port that receives the multicast data frame can borrow the connection interfaces (and associated hardware such as buffers) assigned to these other ports to transmit copies of the multicast data frame simultaneously. | 09-19-2013 |
20140064090 | CACHED ROUTING TABLE MANAGEMENT - Techniques are provided for cached routing table management in a distributed network switch. A frame having a source address and a destination address is received. If no routing entry for the source address is found in a routing table of a switch module in the distributed network switch, then routing information is determined for the source address and a routing entry is generated. The routing table is modified to include the routing entry, based on a set of hash functions. Upon accessing the generated routing entry in the modified routing table responsive to a subsequent lookup request for the source address, the set of caches is modified to include the generated routing entry. | 03-06-2014 |
20140064091 | SLICED ROUTING TABLE MANAGEMENT WITH REPLICATION - Techniques are provided for hash-based routing table management in a distributed network switch. A frame having a source address and a destination address is received by a switch module having bridge elements and a routing table divided into slices of buckets, each slice having a respective property and including one or more buckets. If a routing entry for the source address is found in a first slice of a first set of buckets of the routing table responsive to a lookup request for the source address, and the property of the first slice satisfies a replication condition, then the routing entry is replicated to a second set of buckets of the routing table. | 03-06-2014 |
20140064092 | SLICED ROUTING TABLE MANAGEMENT WITH REPLICATION - Techniques are provided for hash-based routing table management in a distributed network switch. A frame having a source address and a destination address is received by a switch module having bridge elements and a routing table divided into slices of buckets, each slice having a respective property and including one or more buckets. If a routing entry for the source address is found in a first slice of a first set of buckets of the routing table responsive to a lookup request for the source address, and the property of the first slice satisfies a replication condition, then the routing entry is replicated to a second set of buckets of the routing table. | 03-06-2014 |
20140064093 | HASHING-BASED ROUTING TABLE MANAGEMENT - Techniques are provided for hash-based routing table management in a distributed network switch. A frame having a source address and a destination address is received. If no routing entry for the source address is found in a routing table of a switch module in the distributed network switch, routing information is determined for the source address and a routing entry is generated. The routing table is modified to include the routing entry and based on a set of hash functions. | 03-06-2014 |
20140064276 | HASHING-BASED ROUTING TABLE MANAGEMENT - Techniques are provided for hash-based routing table management in a distributed network switch. A frame having a source address and a destination address is received. If no routing entry for the source address is found in a routing table of a switch module in the distributed network switch, routing information is determined for the source address and a routing entry is generated. The routing table is modified to include the routing entry and based on a set of hash functions. | 03-06-2014 |
20140064277 | SLICED ROUTING TABLE MANAGEMENT - Techniques are provided for hash-based routing table management in a distributed network switch. A frame having a source address and a destination address is received. If no routing entry for the source address is found in a routing table of a switch module in the distributed network switch, where the routing table is divided into slices of buckets, then routing information is determined for the source address and a routing entry is generated. The routing table is modified to include the routing entry and based on a set of hash functions and properties of the slices. | 03-06-2014 |
20140064281 | SLICED ROUTING TABLE MANAGEMENT - Techniques are provided for hash-based routing table management in a distributed network switch. A frame having a source address and a destination address is received. If no routing entry for the source address is found in a routing table of a switch module in the distributed network switch, where the routing table is divided into slices of buckets, then routing information is determined for the source address and a routing entry is generated. The routing table is modified to include the routing entry and based on a set of hash functions and properties of the slices. | 03-06-2014 |
20140064282 | CACHED ROUTING TABLE MANAGEMENT - Techniques are provided for cached routing table management in a distributed network switch. A frame having a source address and a destination address is received. If no routing entry for the source address is found in a routing table of a switch module in the distributed network switch, then routing information is determined for the source address and a routing entry is generated. The routing table is modified to include the routing entry, based on a set of hash functions. Upon accessing the generated routing entry in the modified routing table responsive to a subsequent lookup request for the source address, the set of caches is modified to include the generated routing entry. | 03-06-2014 |
20140079061 | FACILITATING INSERTION OF DEVICE MAC ADDRESSES INTO A FORWARDING DATABASE - Techniques are disclosed for hash-based routing table management in a distributed network switch having multiple switch modules. Upon determining that an attempt to insert a first routing entry into a first hash table of the routing table has failed, a second routing entry, which exists in the first hash table, is attempted to be moved to a second hash table of the routing table. If the move attempt is successful, then the first routing entry is added to the location previously occupied by the second routing entry. If the move attempt is unsuccessful, then a third routing entry, which exists in the first hash table, is attempted to be moved. | 03-20-2014 |
20140079064 | FACILITATING INSERTION OF DEVICE MAC ADDRESSES INTO A FORWARDING DATABASE - Techniques are disclosed for hash-based routing table management in a distributed network switch having multiple switch modules. Upon determining that an attempt to insert a first routing entry into a first hash table of the routing table has failed, a second routing entry, which exists in the first hash table, is attempted to be moved to a second hash table of the routing table. If the move attempt is successful, then the first routing entry is added to the location previously occupied by the second routing entry. If the move attempt is unsuccessful, then a third routing entry, which exists in the first hash table, is attempted to be moved. | 03-20-2014 |
20140082122 | USING SPECIAL-CASE HARDWARE UNITS FOR FACILITATING ACCESS CONTROL LISTS ON A NETWORKING ELEMENT - Access control lists (ACLs) include one or more rules that each define a condition and one or more actions to be performed if the condition is satisfied. In one embodiment, the conditions are stored on a ternary content-addressable memory (TCAM), which receives a portion of network traffic, such as a frame header, and compares different portions of the header to entries in the TCAM. If the frame header satisfies the condition, the TCAM reports the match to other elements in the ACL. For certain conditions, the TCAM may divide the condition into a plurality of sub-conditions which are each stored in a row of the TCAM. To efficiently use the limited space in TCAM, the networking element may include one or more comparator units which check for special-case conditions. The comparator units may be used in lieu of the TCAM to determine whether the condition is satisfied. | 03-20-2014 |
20140082168 | PRIORITY RESOLUTION FOR ACCESS CONTROL LIST POLICIES IN A NETWORKING DEVICE - Access control lists (ACLs) permit network administrators to manage network traffic flowing through a networking element to optimize network security, performance, quality of service (QoS), and the like. If a networking element has multiple ACLs directed towards different types of network optimization, each ACL may return a separate action set that identifies one or more actions the networking element should perform based on a received frame. In some cases, these action sets may conflict. To resolve the conflicts, a networking element may include resolution logic that selects one of the conflicting actions based on a predefined precedence value assigned to each action in an action set. By comparing the different precedence values, the resolution logic generates a new action set based on the actions with the highest precedence value. | 03-20-2014 |
20140082176 | USING SPECIAL-CASE HARDWARE UNITS FOR FACILITATING ACCESS CONTROL LISTS ON A NETWORKING ELEMENT - Access control lists (ACLs) include one or more rules that each define a condition and one or more actions to be performed if the condition is satisfied. In one embodiment, the conditions are stored on a ternary content-addressable memory (TCAM), which receives a portion of network traffic, such as a frame header, and compares different portions of the header to entries in the TCAM. If the frame header satisfies the condition, the TCAM reports the match to other elements in the ACL. For certain conditions, the TCAM may divide the condition into a plurality of sub-conditions which are each stored in a row of the TCAM. To efficiently use the limited space in TCAM, the networking element may include one or more comparator units which check for special-case conditions. The comparator units may be used in lieu of the TCAM to determine whether the condition is satisfied. | 03-20-2014 |
20140082195 | PRIORITY RESOLUTION FOR ACCESS CONTROL LIST POLICIES IN A NETWORKING DEVICE - Access control lists (ACLs) permit network administrators to manage network traffic flowing through a networking element to optimize network security, performance, quality of service (QoS), and the like. If a networking element has multiple ACLs directed towards different types of network optimization, each ACL may return a separate action set that identifies one or more actions the networking element should perform based on a received frame. In some cases, these action sets may conflict. To resolve the conflicts, a networking element may include resolution logic that selects one of the conflicting actions based on a predefined precedence value assigned to each action in an action set. By comparing the different precedence values, the resolution logic generates a new action set based on the actions with the highest precedence value. | 03-20-2014 |
20140146823 | MANAGEMENT OF ROUTING TABLES SHARED BY LOGICAL SWITCH PARTITIONS IN A DISTRIBUTED NETWORK SWITCH - Techniques are provided for managing a routing table in a distributed network switch. The distributed network switch is divided into logical switch partitions, or logical networks, that may share a routing table. The shared routing table is configured with counters and thresholds to control utilization of the routing table on a per-logical network basis. When counters exceed certain threshold, the routing table is modified to reduce routing entries within the routing table or pause insertion of new routing entries. | 05-29-2014 |
20140146824 | MANAGEMENT OF ROUTING TABLES SHARED BY LOGICAL SWITCH PARTITIONS IN A DISTRIBUTED NETWORK SWITCH - Techniques are provided for managing a routing table in a distributed network switch. The distributed network switch is divided into logical switch partitions, or logical networks, that may share a routing table. The shared routing table is configured with counters and thresholds to control utilization of the routing table on a per-logical network basis. When counters exceed certain threshold, the routing table is modified to reduce routing entries within the routing table or pause insertion of new routing entries. | 05-29-2014 |
20140173128 | FLOW DISTRIBUTION ALGORITHM FOR AGGREGATED LINKS IN AN ETHERNET SWITCH - Link aggregation is a practice that uses multiple Ethernet links between two end points in order to obtain higher bandwidth and resiliency than possible with a single link. A flow distribution technique is provided to distribute traffic between the two end points equally across all links in the group and achieve greater efficiency. The flow distribution technique generates and sub-divides a hash value based on received packet flow. The divided portions of the hash value are used in a hierarchical fashion to select a link to use for this packet. | 06-19-2014 |
20140173129 | FLOW DISTRIBUTION ALGORITHM FOR AGGREGATED LINKS IN AN ETHERNET SWITCH - Link aggregation is a practice that uses multiple Ethernet links between two end points in order to obtain higher bandwidth and resiliency than possible with a single link. A flow distribution technique is provided to distribute traffic between the two end points equally across all links in the group and achieve greater efficiency. The flow distribution technique generates and sub-divides a hash value based on received packet flow. The divided portions of the hash value are used in a hierarchical fashion to select a link to use for this packet. | 06-19-2014 |
20140204748 | ARBITRATION OF MULTIPLE-THOUSANDS OF FLOWS FOR CONVERGENCE ENHANCED ETHERNET - In one embodiment, a system includes a processor and logic integrated with and/or executable by the processor, the logic being adapted to: receive a plurality of flows, each flow comprising packets of data, assign a service credit to each of the plurality of flows, assign a weight parameter to each of the plurality of flows, select a flow from a head of a first control queue unless the first control queue is empty or there is indication that the first control queue should be avoided, wherein a flow is selected from a head of a second control queue when the first control queue is empty or there is indication that the first control queue should be avoided, provide a number of units of service to the selected flow, and decrease the selected flow's service credit by an amount corresponding to the number of units of service provided thereto. | 07-24-2014 |
20140211806 | SLICED ROUTING TABLE MANAGEMENT WITH REPLICATION - Techniques are provided for hash-based routing table management in a distributed network switch. A frame having a source address and a destination address is received by a switch module having bridge elements and a routing table divided into slices of buckets, each slice having a respective property and including one or more buckets. If a routing entry for the source address is found in a first slice of a first set of buckets of the routing table responsive to a lookup request for the source address, and the property of the first slice satisfies a replication condition, then the routing entry is replicated to a second set of buckets of the routing table. | 07-31-2014 |
20140307554 | VIRTUAL ENHANCED TRANSMISSION SELECTION (VETS) FOR LOSSLESS ETHERNET - In one embodiment, a system includes a hardware processor and logic integrated with and/or executable by the processor, the logic being adapted to receive a traffic flow having a plurality of packets, classify the traffic flow into a traffic class based on a characteristic of the traffic flow, the traffic class being selected from a plurality of traffic classes, store an identifier of the selected traffic class to one or more of the packets, and transmit the traffic flow according to its destination based on a priority of its selected traffic class. In more embodiments, additional systems, methods, and computer program products for prioritizing traffic flow handling are described. | 10-16-2014 |
20150188820 | QUANTIZED CONGESTION NOTIFICATION (QCN) EXTENSION TO EXPLICIT CONGESTION NOTIFICATION (ECN) FOR TRANSPORT-BASED END-TO-END CONGESTION NOTIFICATION - According to one embodiment, a method for handling congestion in a network includes determining that there is congestion on a first device in a network, setting a congestion indicator in a header of a packet to indicate an amount of congestion at the first device, sending the packet to all devices that send traffic to the first device, receiving the packet having the multi-bit indicator in a header thereof at a device that sends traffic to the first device, and reducing a congestion window by a factor of between about 5% and about 50% based on a severity of the congestion indicated by the multi-bit indicator, wherein the congestion window is reduced by a greater factor when the congestion is indicated as being more severe. Other systems and methods for handling congestion in a network are described according to more embodiments. | 07-02-2015 |
20150207637 | MULTICAST PACKET ROUTING VIA CROSSBAR BYPASS PATHS - An approach is described for routing data to a plurality of output terminals via a integrated switch router including a crossbar switch having both a crossbar and a plurality of crossbar bypass lines. Whereas the crossbar may connect each input of the crossbar switch to each output of the crossbar switch, each of the plurality of crossbar bypass lines may connect a single input of the crossbar switch to a corresponding single output of the crossbar switch. According to such approach, a replicated copy of a multicast packet may be forwarded to an output terminal via a crossbar bypass line in parallel with other data forwarded via the crossbar, thus increasing integrated switch router bandwidth. | 07-23-2015 |
20150207638 | MULTICAST PACKET ROUTING VIA CROSSBAR BYPASS PATHS - An approach is described for routing data to a plurality of output terminals via a integrated switch router including a crossbar switch having both a crossbar and a plurality of crossbar bypass lines. Whereas the crossbar may connect each input of the crossbar switch to each output of the crossbar switch, each of the plurality of crossbar bypass lines may connect a single input of the crossbar switch to a corresponding single output of the crossbar switch. According to such approach, a replicated copy of a multicast packet may be forwarded to an output terminal via a crossbar bypass line in parallel with other data forwarded via the crossbar, thus increasing integrated switch router bandwidth. | 07-23-2015 |
20150207662 | NETWORK CONTROL SOFTWARE NOTIFICATION WITH ADVANCE LEARNING - Techniques are disclosed for notifying network control software of new and moved source MAC addresses. In one embodiment, a switch detects packets sent by a new or migrated virtual machine, and sends a copy of a detected packet to the network control software as a notification. The switch further learns the source MAC address, thereby permitting the entry to be used for normal forwarding prior to validation of the entry and the VM associated therewith by the network control software. Until the network control software has validated the VM, the switch may periodically retry the notification to the network control software. “No_Redirect” and “Not_Validated” flags may be used to indicate whether a notification has already been attempted and thus no retry is necessary, and that the VM associated with the VM has not yet been validated, respectively. | 07-23-2015 |
20150207663 | NETWORK CONTROL SOFTWARE NOTIFICATION AND INVALIDATION OF STATIC ENTRIES - Techniques are disclosed for notifying network control software of new and moved source MAC addresses. In one embodiment, a switch may redirect a packet sent by a new or migrated virtual machine to the network control software as a notification. The switch does not forward the packet, thereby protecting against denial of service attacks. The switch further adds to a forwarding database a temporary entry which includes a “No_Redirect” flag for a new source MAC address, or updates an existing entry for a source MAC address that hits in the forwarding database by setting the “No_Redirect” flag. The “No_Redirect” flag indicates whether a notification has already been sent to the network control software for this source MAC address. The switch may periodically retry the notification to the network control software, until the network control software validates the source MAC address, depending on whether the “No_Redirect” is set. | 07-23-2015 |
20150207664 | NETWORK CONTROL SOFTWARE NOTIFICATION WITH DENIAL OF SERVICE PROTECTION - Techniques are disclosed for notifying network control software of new and moved source MAC addresses. In one embodiment, a switch may redirect a packet sent by a new or migrated virtual machine to the network control software as a notification. The switch does not forward the packet, thereby protecting against denial of service attacks. The switch further adds to a forwarding database a temporary entry which includes a “No_Redirect” flag for a new source MAC address, or updates an existing entry for a source MAC address that hits in the forwarding database by setting the “No_Redirect” flag. The “No_Redirect” flag indicates whether a notification has already been sent to the network control software for this source MAC address. The switch may periodically retry the notification to the network control software, until the network control software validates the source MAC address, depending on whether the “No_Redirect” is set. | 07-23-2015 |
20150207665 | NETWORK CONTROL SOFTWARE NOTIFICATION WITH DENIAL OF SERVICE PROTECTION - Techniques are disclosed for notifying network control software of new and moved source MAC addresses. In one embodiment, a switch may redirect a packet sent by a new or migrated virtual machine to the network control software as a notification. The switch does not forward the packet, thereby protecting against denial of service attacks. The switch further adds to a forwarding database a temporary entry which includes a “No_Redirect” flag for a new source MAC address, or updates an existing entry for a source MAC address that hits in the forwarding database by setting the “No_Redirect” flag. The “No_Redirect” flag indicates whether a notification has already been sent to the network control software for this source MAC address. The switch may periodically retry the notification to the network control software, until the network control software validates the source MAC address, depending on whether the “No_Redirect” is set. | 07-23-2015 |
20150207666 | NETWORK CONTROL SOFTWARE NOTIFICATION AND INVALIDATION OF STATIC ENTRIES - Techniques are disclosed for notifying network control software of new and moved source MAC addresses. In one embodiment, a switch may redirect a packet sent by a new or migrated virtual machine to the network control software as a notification. The switch does not forward the packet, thereby protecting against denial of service attacks. The switch further adds to a forwarding database a temporary entry which includes a “No_Redirect” flag for a new source MAC address, or updates an existing entry for a source MAC address that hits in the forwarding database by setting the “No_Redirect” flag. The “No_Redirect” flag indicates whether a notification has already been sent to the network control software for this source MAC address. The switch may periodically retry the notification to the network control software, until the network control software validates the source MAC address, depending on whether the “No_Redirect” is set. | 07-23-2015 |
20150207667 | NETWORK CONTROL SOFTWARE NOTIFICATION WITH ADVANCE LEARNING - Techniques are disclosed for notifying network control software of new and moved source MAC addresses. In one embodiment, a switch detects packets sent by a new or migrated virtual machine, and sends a copy of a detected packet to the network control software as a notification. The switch further learns the source MAC address, thereby permitting the entry to be used for normal forwarding prior to validation of the entry and the VM associated therewith by the network control software. Until the network control software has validated the VM, the switch may periodically retry the notification to the network control software. “No_Redirect” and “Not_Validated” flags may be used to indicate whether a notification has already been attempted and thus no retry is necessary, and that the VM associated with the VM has not yet been validated, respectively. | 07-23-2015 |
20150222443 | COMPUTER-BASED FLOW SYNCHRONIZATION FOR EFFICIENT MULTICAST FORWARDING FOR PRODUCTS AND SERVICES - A method for synchronizing multicast message subflows in a switched network includes associating, with a processing device, a first destination identifier corresponding to a multicast message with a first queue that corresponds to a first output port of a switching device, associating, with a processing device, a second destination identifier corresponding to the multicast message with a second queue that corresponds to a second output port of the switching device, pausing the first queue in response to a message counter corresponding to the first queue crossing a first predetermined threshold, and unpausing the first queue in response to the message counter crossing a second predetermined threshold, wherein the message counter indicates a quantity of data that has been forwarded by the first queue but remains to be forwarded by the second queue. | 08-06-2015 |
20150339240 | ATOMICALLY UPDATING TERNARY CONTENT ADDRESSABLE MEMORY-BASED ACCESS CONTROL LISTS - Embodiments described herein provide techniques for atomically updating a ternary content addressable memory (TCAM)-based access control list (ACL). According to one embodiment, a current version bit of the ACL is determined. The current version bit indicates that a rule in the ACL is active is the version flag in the rule matches the current version bit. Through these techniques, a first set of rules can be modified to create a second set of rules (e.g., by insertions, deletions, and replacements, etc.). | 11-26-2015 |
20150341261 | SKIPPING AND PARSING INTERNET PROTOCOL VERSION 6 (IPv6) EXTENSION HEADERS TO REACH UPPER LAYER HEADERS - Embodiments presented herein describe techniques for parsing an Internet Protocol version 6 frame and skipping extension headers of the frame. A configurable skip list is provided that specifies extension headers for a networking device to skip when parsing the frame. The networking device examines “next header” fields of each extension header to determine a next extension header in the chain. If the next extension header matches an extension header in the skip list, the networking device iterates to the next header in the chain until the end of the chain (or an extension header that does not contain a match in the list) is reached. | 11-26-2015 |
20150341265 | SKIPPING AND PARSING INTERNET PROTOCOL VERSION 6 EXTENSION HEADERS TO REACH UPPER LAYER HEADERS - Embodiments presented herein describe techniques for parsing an Internet Protocol version 6 frame and skipping extension headers of the frame. A configurable skip list is provided that specifies extension headers for a networking device to skip when parsing the frame. The networking device examines “next header” fields of each extension header to determine a next extension header in the chain. If the next extension header matches an extension header in the skip list, the networking device iterates to the next header in the chain until the end of the chain (or an extension header that does not contain a match in the list) is reached. | 11-26-2015 |
20150341269 | SUPPORTING ACCESS CONTROL LIST RULES THAT APPLY TO TCP SEGMENTS BELONGING TO 'ESTABLISHED' CONNECTION - Embodiments presented herein provide a TCAM-based access control list that supports disjunction operations in rules. According to one embodiment, a numeric range table is tied to the access control list. Each entry in the numeric range table includes an encode field that provides for scanning TCP flags in a TCP header of an incoming Ethernet frame. Further, each entry provides a first mask and a second mask used to test for desired set and unset TCP flags in a given frame. Each entry also provides an operation field that performs a disjunction operation that compares the first mask, the second mask, and set TCP flags in a given frame. | 11-26-2015 |
20150341270 | SUPPORTING ACCESS CONTROL LIST RULES THAT APPLY TO TCP SEGMENTS BELONGING TO 'ESTABLISHED' CONNECTION - Embodiments presented herein provide a TCAM-based access control list that supports disjunction operations in rules. According to one embodiment, a numeric range table is tied to the access control list. Each entry in the numeric range table includes an encode field that provides for scanning TCP flags in a TCP header of an incoming Ethernet frame. Further, each entry provides a first mask and a second mask used to test for desired set and unset TCP flags in a given frame. Each entry also provides an operation field that performs a disjunction operation that compares the first mask, the second mask, and set TCP flags in a given frame. | 11-26-2015 |
20150341316 | ACCESS CONTROL LIST-BASED PORT MIRRORING TECHNIQUES - Embodiments presented herein describe techniques for selecting incoming network frames to be mirrored using an access control list. According to one embodiment, an incoming frame is received. Upon determining that the incoming frame matches an entry in the access control list, a mirror field of the entry is evaluated. The mirror field identifies at least one mirroring action to perform on the frame. The identified mirroring action is performed on the frame. | 11-26-2015 |
20150341364 | ATOMICALLY UPDATING TERNARY CONTENT ADDRESSABLE MEMORY-BASED ACCESS CONTROL LISTS - Embodiments described herein provide techniques for atomically updating a ternary content addressable memory (TCAM)-based access control list (ACL). According to one embodiment, a current version bit of the ACL is determined. The current version bit indicates that a rule in the ACL is active is the version flag in the rule matches the current version bit. Through these techniques, a first set of rules can be modified to create a second set of rules (e.g., by insertions, deletions, and replacements, etc.). | 11-26-2015 |
20150341365 | ACCESS CONTROL LIST-BASED PORT MIRRORING TECHNIQUES - Embodiments presented herein describe techniques for selecting incoming network frames to be mirrored using an access control list. According to one embodiment, an incoming frame is received. Upon determining that the incoming frame matches an entry in the access control list, a mirror field of the entry is evaluated. The mirror field identifies at least one mirroring action to perform on the frame. The identified mirroring action is performed on the frame. | 11-26-2015 |
20150358244 | UNIFIED FRAMEWORK FOR ISOLATING MULTICAST AND BROADCAST FRAMES TO A TRAFFIC CLASS SEPARATE FROM A TRAFFIC CLASS USED FOR UNICAST FRAMES - Embodiments presented herein describe techniques for isolating multicast and broadcast frames to a traffic class that is separate from a traffic class used for unicast frames. According to one embodiment, a network switch receives an incoming Ethernet virtual local area network (VLAN)-tagged frame. The switch evaluates priority bits of the VLAN tag of the frame. The switch also determines a type of frame (e.g., whether the frame is unicast, broadcast, multicast, or flood). Based on the priority field values and the type of the frame, the switch identifies a mapping of the frame to a particular traffic class. The network switch assigns the frame to the traffic class. | 12-10-2015 |
20150358245 | UNIFIED FRAMEWORK FOR ISOLATING MULTICAST AND BROADCAST FRAMES TO A TRAFFIC CLASS SEPARATE FROM A TRAFFIC CLASS USED FOR UNICAST FRAMES - Embodiments presented herein describe techniques for isolating multicast and broadcast frames to a traffic class that is separate from a traffic class used for unicast frames. According to one embodiment, a network switch receives an incoming Ethernet virtual local area network (VLAN)-tagged frame. The switch evaluates priority bits of the VLAN tag of the frame. The switch also determines a type of frame (e.g., whether the frame is unicast, broadcast, multicast, or flood). Based on the priority field values and the type of the frame, the switch identifies a mapping of the frame to a particular traffic class. The network switch assigns the frame to the traffic class. | 12-10-2015 |
20150381312 | INTEGRATED PHYSICAL CODING SUBLAYER AND FORWARD ERROR CORRECTION IN NETWORKING APPLICATIONS - Method and apparatus for receiving data at a physical coding sublayer (PCS) transmit structure from a media access control (MAC) sublayer. The method includes performing a first forward error-correcting (FEC) sub-function on the data in the PCS transmit structure. The method further includes transmitting the data on one or more physical medium attachment (PMA) lanes to a PCS receive structure. The method also includes performing a second FEC sub-function on the data in the PCS receive structure. | 12-31-2015 |
20150381316 | INTEGRATED PHYSICAL CODING SUBLAYER AND FORWARD ERROR CORRECTION IN NETWORKING APPLICATIONS - Method and apparatus for receiving data at a physical coding sublayer (PCS) transmit structure from a media access control (MAC) sublayer. The method includes performing a first forward error-correcting (FEC) sub-function on the data in the PCS transmit structure. The method further includes transmitting the data on one or more physical medium attachment (PMA) lanes to a PCS receive structure. The method also includes performing a second FEC sub-function on the data in the PCS receive structure. | 12-31-2015 |
20150381338 | LATENCY-OPTIMIZED PHYSICAL CODING SUBLAYER - Method and apparatus for reducing latency in a networking application comprises receiving data at a physical coding sublayer (PCS) from a media access control (MAC) sublayer, wherein the MAC sublayer utilizes a first clock domain operating at a first clock frequency. The method further comprises performing one or more functions in the PCS on the data in the first clock domain. The method also includes transmitting the data on one or more physical medium attachment (PMA) lanes, wherein the one or more PMA lanes utilize a second clock domain operating at a second clock frequency, wherein the first clock frequency and the second clock frequency have a fixed ratio. The method also comprises performing one or more functions in the PCS on the data in the second clock domain. | 12-31-2015 |
20150381339 | LATENCY-OPTIMIZED PHYSICAL CODING SUBLAYER - Method and apparatus for reducing latency in a networking application comprises receiving data at a physical coding sublayer (PCS) from a media access control (MAC) sublayer, wherein the MAC sublayer utilizes a first clock domain operating at a first clock frequency. The method further comprises performing one or more functions in the PCS on the data in the first clock domain. The method also includes transmitting the data on one or more physical medium attachment (PMA) lanes, wherein the one or more PMA lanes utilize a second clock domain operating at a second clock frequency, wherein the first clock frequency and the second clock frequency have a fixed ratio. The method also comprises performing one or more functions in the PCS on the data in the second clock domain. | 12-31-2015 |
20160028643 | ARBITRATION OF MULTIPLE-THOUSANDS OF FLOWS FOR CONVERGENCE ENHANCED ETHERNET - In one embodiment, a method includes selecting a flow from a head of a first control queue or a second control queue. The method also includes providing service to the selected flow. Moreover, the method includes decreasing a service credit of the selected flow by an amount corresponding to an amount of service provided to the selected flow. In another embodiment, a computer program product includes a computer readable storage medium having program code embodied therewith. The embodied program code is readable/executable by a device to select, by the device, a flow from a head of a first control queue or a second control queue. The embodied program code is also readable/executable to provide, by the device, service to the selected flow, and decrease, by the device, a service credit of the selected flow by an amount corresponding to an amount of service provided to the selected flow. | 01-28-2016 |
20160085722 | DATA PACKET PROCESSING - Proposed is an action machine for processing packet data in a network processor. The action machine comprises: first and second data storage units adapted to store data for processing; and a processing unit adapted to process data from the first and second data storage units. The first storage unit is adapted to be accessed by the processing unit and a unit external to the action machine, and the second storage unit is adapted to only be accessed by the processing unit. | 03-24-2016 |
20160132449 | NETWORK CONTROLLER - SIDEBAND INTERFACE PORT CONTROLLER - A network interface controller includes a media access controller and a host adapter. The host adapter includes a transmit route connected to receive an in-band packet from a host and further connected to transmit the in-band packet to the media access controller. The network interface controller also includes a sideband port controller connected to receive a sideband packet destined for a network from a sideband endpoint and further connected to transmit the sideband packet to the host adapter. The host adapter further includes a host buffer to store the in-band packet, a sideband buffer to store the sideband packet, and an arbiter connected to allow, at different times, the in-band packet to advance along the transmit route from the host buffer to the media access controller and the sideband packet to advance along the transmit route from the sideband buffer to the media access controller. | 05-12-2016 |
20160132450 | NETWORK CONTROLLER - SIDEBAND INTERFACE PORT CONTROLLER - A network interface controller includes a media access controller connected to receive an in-band packet and further connected to receive a sideband packet. The network interface controller includes a host adapter that includes a receive route connected to receive the in-band packet and the sideband packet from the media access controller, and further connected to transmit the in-band packet to a host. The network interface controller includes a sideband port controller comprising a sideband receive buffer. The host adapter further includes a first receive buffer to store the in-band packet and to store the sideband packet. The host adapter further includes an arbiter connected to allow, at a time, the in-band packet to advance from the first receive buffer along the receive route towards the host and further connected to allow, at a different time, the sideband packet to advance to the sideband receive buffer of the sideband port controller. | 05-12-2016 |
20160134462 | HOST NETWORK CONTROLLER - Provided is a method for operating a host network controller for a network processor where the host network controller has at least one register. A restricted set of state data may be stored in at least one register. The restricted set of state data may be indicative of fewer possible states than those defined in accordance with a standardized communication protocol. The host network controller may implement a finite state machine based on the restricted set of state data stored in the at least one register such that the finite state machine may have fewer possible states than those defined in accordance with the standardized communication protocol. | 05-12-2016 |
20160134471 | HOST NETWORK CONTROLLER - Embodied is a host network controller for a network processor. The host network controller is adapted to implement a finite state machine for an operation adhering to a standardized communication protocol, wherein the finite state machine has fewer possible states than those defined for the operation in accordance with the standardized communication protocol. | 05-12-2016 |
20160134529 | NETWORK CONTROLLER-SIDEBAND INTERFACE PORT CONTROLLER - Aspects of the present disclosure are directed towards a network interface controller that could provide a connection for a device to a network. The network interface controller can include a sideband port controller. The sideband port controller can provide a sideband connection between the network and a sideband endpoint circuit that can be operative to communicate with the network via a sideband. The sideband port controller can include an event notification unit operative to compile information into an event notification packet. The sideband port controller can further include a packet parser. In embodiments, the packet parser could be operative to analyses a packet to provide an indication that the packet contains the event notification packet. In embodiments, the sideband port controller could be operative to forward the information in the event notification packet to the sideband endpoint circuit, responsive to that indication. | 05-12-2016 |
20160134549 | STICKY AND TRANSIENT MARKERS FOR A PACKET PARSER - A packet parser has a set of marker elements each comprising a one bit latch and connected to store flag values from the results of the application of parser rules. Some marker elements are connected to provide the stored marker values as input to the parser rule logic to be taken into account in the processing of subsequent parser rules and some are connected to control external hardware. Some markers are reset at the end of each packet. A special toggle marker element toggles its value when its address is selected and other marker elements are connected to store, when its own address is selected, the value of the toggle element. Other markers toggle their own value when selected. | 05-12-2016 |
20160134552 | NETWORK CONTROLLER-SIDEBAND INTERFACE PORT CONTROLLER - A network interface controller (NC) that can provide a connection for a device to a network. The NC can include a sideband port controller. The sideband port controller can provide a sideband connection between the network and a sideband endpoint circuit that can communicate information with the network via the sideband. The sideband port controller can include a receive data route that has an input for receiving packets of data from the network and an output for passing the packets of data received from the network to the sideband endpoint circuit. The receive data route may include a buffer to receive the packets of data from the network and to pass the packets of data received from the network to the sideband endpoint. | 05-12-2016 |
20160134559 | NETWORK CONTROLLER-SIDEBAND INTERFACE PORT CONTROLLER - Aspects of the present disclosure are directed towards a network interface controller that could provide a connection for a device to a network. The network interface controller can include a sideband port controller. The sideband port controller can provide a sideband connection between the network and a sideband endpoint circuit that can be operative to communicate with the network via a sideband. The sideband port controller can include an event notification unit operative to compile information into an event notification packet. The sideband port controller can further include a packet parser. In embodiments, the packet parser could be operative to analyses a packet to provide an indication that the packet contains the event notification packet. In embodiments, the sideband port controller could be operative to forward the information in the event notification packet to the sideband endpoint circuit, responsive to that indication. | 05-12-2016 |
20160134560 | NETWORK CONTROLLER-SIDEBAND INTERFACE PORT CONTROLLER - A network interface controller for providing a connection for a device to a network. The network interface controller may include a sideband port controller. The sideband port controller may provide a sideband connection between the network and a sideband endpoint circuit that is operative to communicate information with the network via the sideband. The sideband port controller may include a transmit data route having an input for receiving packets from the sideband endpoint circuit and an output for passing packets received from the sideband endpoint to the network. A packet parser is connected to the transmit data route. The packet parser is operative to read data from packets received from the sideband endpoint and is further operative to analyze the data. | 05-12-2016 |