CA2304340A1 - Full-duplex communication processor - Google Patents

Full-duplex communication processor Download PDF

Info

Publication number
CA2304340A1
CA2304340A1 CA002304340A CA2304340A CA2304340A1 CA 2304340 A1 CA2304340 A1 CA 2304340A1 CA 002304340 A CA002304340 A CA 002304340A CA 2304340 A CA2304340 A CA 2304340A CA 2304340 A1 CA2304340 A1 CA 2304340A1
Authority
CA
Canada
Prior art keywords
communication processor
duplex communication
full
data
frame
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CA002304340A
Other languages
French (fr)
Other versions
CA2304340C (en
Inventor
Bradley Roach
Peter Fiacco
Greg Scherer
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Emulex Corp
Original Assignee
Emulex Corporation
Bradley Roach
Peter Fiacco
Greg Scherer
Emulex Design & Manufacturing Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Emulex Corporation, Bradley Roach, Peter Fiacco, Greg Scherer, Emulex Design & Manufacturing Corporation filed Critical Emulex Corporation
Publication of CA2304340A1 publication Critical patent/CA2304340A1/en
Application granted granted Critical
Publication of CA2304340C publication Critical patent/CA2304340C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/901Buffering arrangements using storage descriptor, e.g. read or write pointers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2801Broadband local area networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9084Reactions to storage capacity overflow
    • H04L49/9089Reactions to storage capacity overflow replacing packets in a storage arrangement, e.g. pushout
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/28DMA
    • G06F2213/2802DMA using DMA transfer descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/12Protocol engines

Abstract

A full duplex communication processor (20) simultaneously sends and receives frames of data and commands. Separate transmit (32) and receive (30) protocol engines are controlled by separate sequencers. This enables frames of data to be received and transmitted simultaneously without involving the CPU (40) on a frame-by-frame basis.
CA002304340A 1997-09-24 1998-09-24 Full-duplex communication processor Expired - Fee Related CA2304340C (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/937,066 1997-09-24
US08/937,066 US6005849A (en) 1997-09-24 1997-09-24 Full-duplex communication processor which can be used for fibre channel frames
PCT/US1998/020003 WO1999016195A1 (en) 1997-09-24 1998-09-24 Full-duplex communication processor

Publications (2)

Publication Number Publication Date
CA2304340A1 true CA2304340A1 (en) 1999-04-01
CA2304340C CA2304340C (en) 2001-12-18

Family

ID=25469444

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002304340A Expired - Fee Related CA2304340C (en) 1997-09-24 1998-09-24 Full-duplex communication processor

Country Status (6)

Country Link
US (1) US6005849A (en)
EP (1) EP1021879A4 (en)
JP (1) JP2001517895A (en)
KR (1) KR100315245B1 (en)
CA (1) CA2304340C (en)
WO (1) WO1999016195A1 (en)

Families Citing this family (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6118776A (en) * 1997-02-18 2000-09-12 Vixel Corporation Methods and apparatus for fiber channel interconnection of private loop devices
US6185203B1 (en) 1997-02-18 2001-02-06 Vixel Corporation Fibre channel switching fabric
US6304910B1 (en) * 1997-09-24 2001-10-16 Emulex Corporation Communication processor having buffer list modifier control bits
US7167927B2 (en) 1997-10-14 2007-01-23 Alacritech, Inc. TCP/IP offload device with fast-path TCP ACK generating and transmitting mechanism
US6434620B1 (en) 1998-08-27 2002-08-13 Alacritech, Inc. TCP/IP offload network interface device
US7174393B2 (en) 2000-12-26 2007-02-06 Alacritech, Inc. TCP/IP offload network interface device
US7089326B2 (en) 1997-10-14 2006-08-08 Alacritech, Inc. Fast-path processing for receiving data on TCP connection offload devices
US6807581B1 (en) 2000-09-29 2004-10-19 Alacritech, Inc. Intelligent network storage interface system
US7237036B2 (en) 1997-10-14 2007-06-26 Alacritech, Inc. Fast-path apparatus for receiving data corresponding a TCP connection
US6226680B1 (en) 1997-10-14 2001-05-01 Alacritech, Inc. Intelligent network interface system method for protocol processing
US6658480B2 (en) 1997-10-14 2003-12-02 Alacritech, Inc. Intelligent network interface system and method for accelerated protocol processing
US8782199B2 (en) 1997-10-14 2014-07-15 A-Tech Llc Parsing a packet header
US8539112B2 (en) 1997-10-14 2013-09-17 Alacritech, Inc. TCP/IP offload device
US7284070B2 (en) * 1997-10-14 2007-10-16 Alacritech, Inc. TCP offload network interface device
US6697868B2 (en) 2000-02-28 2004-02-24 Alacritech, Inc. Protocol processing stack for use with intelligent network interface device
US7076568B2 (en) 1997-10-14 2006-07-11 Alacritech, Inc. Data communication apparatus for computer intelligent network interface card which transfers data between a network and a storage device according designated uniform datagram protocol socket
US6687758B2 (en) 2001-03-07 2004-02-03 Alacritech, Inc. Port aggregation for network connections that are offloaded to network interface devices
US6427173B1 (en) 1997-10-14 2002-07-30 Alacritech, Inc. Intelligent network interfaced device and system for accelerated communication
US6389479B1 (en) 1997-10-14 2002-05-14 Alacritech, Inc. Intelligent network interface device and system for accelerated communication
US7185266B2 (en) 2003-02-12 2007-02-27 Alacritech, Inc. Network interface device for error detection using partial CRCS of variable length message portions
US8621101B1 (en) 2000-09-29 2013-12-31 Alacritech, Inc. Intelligent network storage interface device
US6757746B2 (en) 1997-10-14 2004-06-29 Alacritech, Inc. Obtaining a destination address so that a network interface device can write network data without headers directly into host memory
US6427171B1 (en) 1997-10-14 2002-07-30 Alacritech, Inc. Protocol processing stack for use with intelligent network interface device
US6591302B2 (en) 1997-10-14 2003-07-08 Alacritech, Inc. Fast-path apparatus for receiving data corresponding to a TCP connection
US7133940B2 (en) 1997-10-14 2006-11-07 Alacritech, Inc. Network interface device employing a DMA command queue
US7042898B2 (en) 1997-10-14 2006-05-09 Alacritech, Inc. Reducing delays associated with inserting a checksum into a network message
US6289386B1 (en) * 1998-05-11 2001-09-11 Lsi Logic Corporation Implementation of a divide algorithm for buffer credit calculation in a high speed serial channel
US6353612B1 (en) 1998-06-19 2002-03-05 Brocade Communications Systems, Inc. Probing device
US7664883B2 (en) 1998-08-28 2010-02-16 Alacritech, Inc. Network interface device that fast-path processes solicited session layer read commands
US6772207B1 (en) 1999-01-28 2004-08-03 Brocade Communications Systems, Inc. System and method for managing fibre channel switching devices
US7328270B1 (en) * 1999-02-25 2008-02-05 Advanced Micro Devices, Inc. Communication protocol processor having multiple microprocessor cores connected in series and dynamically reprogrammed during operation via instructions transmitted along the same data paths used to convey communication data
US6643748B1 (en) 2000-04-20 2003-11-04 Microsoft Corporation Programmatic masking of storage units
US8019901B2 (en) 2000-09-29 2011-09-13 Alacritech, Inc. Intelligent network storage interface system
US20020118692A1 (en) * 2001-01-04 2002-08-29 Oberman Stuart F. Ensuring proper packet ordering in a cut-through and early-forwarding network switch
US7042891B2 (en) * 2001-01-04 2006-05-09 Nishan Systems, Inc. Dynamic selection of lowest latency path in a network switch
US6807599B2 (en) * 2001-10-15 2004-10-19 Advanced Micro Devices, Inc. Computer system I/O node for connection serially in a chain to a host
FR2831686B1 (en) * 2001-10-30 2005-05-20 Siemens Vdo Automotive METHOD AND DEVICE FOR COMMUNICATING ON A NETWORK OF A VEHICLE
US7047346B2 (en) * 2001-12-31 2006-05-16 Storage Technology Corporation Transparent fiber channel concentrator for point to point technologies
US7496689B2 (en) 2002-04-22 2009-02-24 Alacritech, Inc. TCP/IP offload device
US7543087B2 (en) 2002-04-22 2009-06-02 Alacritech, Inc. Freeing transmit memory on a network interface device prior to receiving an acknowledgement that transmit data has been received by a remote device
US7191241B2 (en) 2002-09-27 2007-03-13 Alacritech, Inc. Fast-path apparatus for receiving data corresponding to a TCP connection
US7337241B2 (en) 2002-09-27 2008-02-26 Alacritech, Inc. Fast-path apparatus for receiving data corresponding to a TCP connection
JP4432388B2 (en) 2003-08-12 2010-03-17 株式会社日立製作所 I / O controller
US6996070B2 (en) 2003-12-05 2006-02-07 Alacritech, Inc. TCP/IP offload device with reduced sequential processing
US20050128945A1 (en) * 2003-12-11 2005-06-16 Chen-Chi Kuo Preventing a packet associated with a blocked port from being placed in a transmit buffer
JP3948454B2 (en) * 2003-12-12 2007-07-25 ソニー株式会社 COMMUNICATION DEVICE, COMMUNICATION SYSTEM, COMMUNICATION METHOD, AND PROGRAM
US8248939B1 (en) 2004-10-08 2012-08-21 Alacritech, Inc. Transferring control of TCP connections between hierarchy of processing mechanisms
CN1298049C (en) * 2005-03-08 2007-01-31 北京中星微电子有限公司 Graphic engine chip and its using method
CN1306594C (en) * 2005-03-08 2007-03-21 北京中星微电子有限公司 Graphic engine chip and its using method
US8149854B2 (en) 2005-06-30 2012-04-03 Intel Corporation Multi-threaded transmit transport engine for storage devices
US7738500B1 (en) 2005-12-14 2010-06-15 Alacritech, Inc. TCP timestamp synchronization for network connections that are offloaded to network interface devices
US8024396B2 (en) 2007-04-26 2011-09-20 Microsoft Corporation Distributed behavior controlled execution of modeled applications
JP4609458B2 (en) * 2007-06-25 2011-01-12 セイコーエプソン株式会社 Projector and image processing apparatus
US8239505B2 (en) 2007-06-29 2012-08-07 Microsoft Corporation Progressively implementing declarative models in distributed systems
US7970892B2 (en) 2007-06-29 2011-06-28 Microsoft Corporation Tuning and optimizing distributed systems with declarative models
US8230386B2 (en) * 2007-08-23 2012-07-24 Microsoft Corporation Monitoring distributed applications
US7926070B2 (en) * 2007-10-26 2011-04-12 Microsoft Corporation Performing requested commands for model-based applications
US7974939B2 (en) * 2007-10-26 2011-07-05 Microsoft Corporation Processing model-based commands for distributed applications
US8181151B2 (en) 2007-10-26 2012-05-15 Microsoft Corporation Modeling and managing heterogeneous applications
US8225308B2 (en) 2007-10-26 2012-07-17 Microsoft Corporation Managing software lifecycle
US8099720B2 (en) * 2007-10-26 2012-01-17 Microsoft Corporation Translating declarative models
US8539513B1 (en) 2008-04-01 2013-09-17 Alacritech, Inc. Accelerating data transfer in a virtual computer system with tightly coupled TCP connections
US8341286B1 (en) 2008-07-31 2012-12-25 Alacritech, Inc. TCP offload send optimization
US9306793B1 (en) 2008-10-22 2016-04-05 Alacritech, Inc. TCP offload device that batches session layer headers to reduce interrupts as well as CPU copies
JP5175773B2 (en) * 2009-02-27 2013-04-03 株式会社東芝 Communication apparatus, method and program
US8953631B2 (en) * 2010-06-30 2015-02-10 Intel Corporation Interruption, at least in part, of frame transmission
JP5571154B2 (en) * 2012-11-19 2014-08-13 株式会社東芝 Communication apparatus, method and program
US9195626B2 (en) * 2013-01-29 2015-11-24 Emulex Corporation Reducing write I/O latency using asynchronous Fibre Channel exchange

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0206743A3 (en) * 1985-06-20 1990-04-25 Texas Instruments Incorporated Zero fall-through time asynchronous fifo buffer with nonambiguous empty/full resolution
US5185736A (en) * 1989-05-12 1993-02-09 Alcatel Na Network Systems Corp. Synchronous optical transmission system
US5285448A (en) * 1990-03-01 1994-02-08 Hitachi, Ltd. Transmission system of system of system control information in a ring LAN system
EP0492025B1 (en) * 1990-12-20 1997-08-06 International Business Machines Corporation High-speed multi-port FIFO buffer circuit
US5426639A (en) * 1991-11-29 1995-06-20 At&T Corp. Multiple virtual FIFO arrangement
US5243596A (en) * 1992-03-18 1993-09-07 Fischer & Porter Company Network architecture suitable for multicasting and resource locking
US5444853A (en) * 1992-03-31 1995-08-22 Seiko Epson Corporation System and method for transferring data between a plurality of virtual FIFO's and a peripheral via a hardware FIFO and selectively updating control information associated with the virtual FIFO's
US5546347A (en) * 1994-07-22 1996-08-13 Integrated Device Technology, Inc. Interleaving architecture and method for a high density FIFO
US5638518A (en) * 1994-10-24 1997-06-10 Lsi Logic Corporation Node loop core for implementing transmission protocol in fibre channel
US5519695A (en) * 1994-10-27 1996-05-21 Hewlett-Packard Company Switch element for fiber channel networks
US5548590A (en) * 1995-01-30 1996-08-20 Hewlett-Packard Company High performance frame time monitoring system and method for a fiber optic switch for a fiber optic network
EP0732659B1 (en) * 1995-03-17 2001-08-08 LSI Logic Corporation Controlling (n+i) I/O channels with (n) data managers in a homogeneous software programming environment
US5717689A (en) * 1995-10-10 1998-02-10 Lucent Technologies Inc. Data link layer protocol for transport of ATM cells over a wireless link

Also Published As

Publication number Publication date
KR100315245B1 (en) 2001-11-26
KR20010024291A (en) 2001-03-26
US6005849A (en) 1999-12-21
CA2304340C (en) 2001-12-18
WO1999016195A1 (en) 1999-04-01
JP2001517895A (en) 2001-10-09
EP1021879A1 (en) 2000-07-26
EP1021879A4 (en) 2006-04-12

Similar Documents

Publication Publication Date Title
CA2304340A1 (en) Full-duplex communication processor
CA2386319A1 (en) System for setting transmission protocol based on detected baud rate
WO2002054184A3 (en) Systems and methods for transmitting motion control data
WO2002056539A3 (en) System and method for synchronizing data transmission across a variable delay interface
CA2075774A1 (en) Bidirectional parallel protocol
CA2466390A1 (en) Secure session set up based on the wireless application protocol
CA2384290A1 (en) Relocation in a communication system
CA2124610A1 (en) Integrated User Network Interface Device
EP0748077A3 (en) Asymmetric ping-pong communication system
WO2001020892A3 (en) A method for transmitting data between respective first and second modems in a telecommunications system, and a telecommunications system
CA2218153A1 (en) Reduced overhead tcp communication system
AU2560197A (en) Contactless communication system
CA2051818A1 (en) Simultaneous voice and data system using the existing two-wire interface
WO2002099606A3 (en) Local protocol server
CA2181708A1 (en) Method, Transceiver, and System for Providing Wireless Communication Compatible with 10Base-T Ethernet
CA2306767A1 (en) Communication technique for field devices in industrial processes
WO2000045581A3 (en) Modem transfer mechanism which prioritized data transfers
WO2003019841A3 (en) Enhanced protocol conversion system
CA2273981A1 (en) Mobile communication system
AU2003276516A1 (en) Data packet transmission in a single container
EP0224877A3 (en) Universal module interface
WO1998035517A3 (en) A system for exchanging asynchronous data over a synchronous communication interface between a communication device and an external accessory
WO2001078348A3 (en) Integrated access device controller
EP1094640A3 (en) Network system
MY125043A (en) Communication system,destination node and method therefore

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed