Symbol-level Network Coding for Wireless Mesh Networks

Text Preview:
Symbol-level Network Coding for Wireless Mesh Networks
                                         Sachin Katti, Dina Katabi, Hari Balakrishnan, and Muriel Medard
                                                       Massachusetts Institute of Technology


ABSTRACT                                                                                 In MIXIT, the network and the lower layers collaborate to improve
                                                                                      throughput by taking advantage of this observation. Rather than just
This paper describes MIXIT, a system that improves the throughput                     send up a sequence of bits, the PHY annotates each bit with SoftPHY
of wireless mesh networks. MIXIT exploits a basic property of mesh                    hints [8] that reflect the PHY's confidence in its demodulation and
networks: even when no node receives a packet correctly, any given                    decoding. The MIXIT link layer passes up frames to the network layer
bit is likely to be received by some node correctly. Instead of insisting             with these annotations, but does not try to recover erroneous frames or
on forwarding only correct packets, MIXIT routers use physical layer                  low-confidence bits using link-layer retransmissions. Instead, the net-
hints to make their best guess about which bits in a corrupted packet                 work layer uses the SoftPHY hints to filter out the groups of bits with
are likely to be correct and forward them to the destination. Even                    low confidence in a packet, and then it performs opportunistic routing
though this approach inevitably lets erroneous bits through, we find                  on groups of high confidence bits. Hence, insisting on receiving fully
that it can achieve high throughput without compromising end-to-end                   correct packets on each link is unnecessary.
reliability.                                                                             The core component of the MIXIT protocol is a new network code
   The core component of MIXIT is a novel network code that op-                       that allows each link to operate at a considerably high bit-error rate
erates on small groups of bits, called symbols. It allows the nodes                   compared to the status quo without compromising end-to-end reliabil-
to opportunistically route groups of bits to their destination with low               ity. Unlike previous work, the network code operates at the granularity
overhead. MIXIT's network code also incorporates an end-to-end er-                    of symbols 1 rather than packets: each router forwards (using radio
ror correction component that the destination uses to correct any errors              broadcast) random linear combinations of the high-confidence sym-
that might seep through. We have implemented MIXIT on a software                      bols belonging to different packets. Thus, a MIXIT router forwards
radio platform running the Zigbee radio protocol. Our experiments on                  symbols that are likely to be correct, tries to avoid forwarding symbols
a 25-node indoor testbed show that MIXIT has a throughput gain of                     that are likely to be corrupt, but inevitably makes a few incorrect
2.8 over MORE, a state-of-the-art opportunistic routing scheme, and                  guesses and forwards corrupt symbols.
about 3.9 over traditional routing using the ETX metric.                                MIXIT's network code addresses two challenges in performing
                                                                                      such symbol-level opportunistic routing over potentially erroneous
Categories and Subject Descriptors                                                    data. The first problem is scalable coordination: the effort required
  C.2.2 [Computer Systems                   Organization]:            Computer-       for nodes to determine which symbols were received at each node
Communications Networks                                                               to prevent duplicate transmissions of the same symbol is significant.
General Terms                                                                         MIXIT uses the randomness from the network code along with a novel
    Algorithms, Design, Performance, Theory                                           dynamic programming algorithm to solve this problem and scalably
                                                                                      "funnel" high-confidence symbols to the destination, compared to a
                                                                                      node co-ordination based approach like ExOR [1].
1    Introduction                                                                        The second problem is error recovery: because erroneous symbols
                                                                                      do seep through, the destination needs to correct them. Rather than
This paper presents MIXIT a system that significantly improves the                    the traditional approach of requesting explicit retransmissions, MIXIT
throughput of a wireless mesh network compared to the best current                    uses a rateless end-to-end error correcting component that works in
approaches. In both traditional routing protocols as well as more recent              concert with the network code for this task. The routers themselves
opportunistic approaches [1, 2], each intermediate node forwards a                    only forward random linear combinations of high-confidence symbols,
packet only if it has no errors. In contrast, MIXIT takes a much looser               performing no error handling.
approach: a forwarding node does not attempt to recover from any                         MIXIT incorporates two additional techniques to improve perfor-
errors, or even bother to apply an error detection code (like a CRC).                 mance:
   Somewhat surprisingly, relaxing the requirement that a node only
forward correct data improves throughput. The main reason for this                     Increased concurrency: MIXIT takes advantage of the flexibility
improvement is a unique property of wireless mesh networks: Even                        that nodes are no longer required to ensure correct packet delivery to
when no node receives a packet correctly, any given bit is likely to be                 design a channel access protocol that allows many more concurrent
received correctly by some node.                                                        transmissions than CSMA. As long as a transmitted symbol is
                                                                                        correctly received by some node closer to the final destination, the
                                                                                        protocol achieves good throughput.
Permission to make digital or hard copies of all or part of this work for personal
or classroom use is granted without fee provided that copies are not made or           Congestion-aware forwarding: MIXIT's forwarding algorithm
distributed for profit or commercial advantage and that copies bear this notice         forwards coded symbols via paths that have both high delivery
and the full citation on the first page. To copy otherwise, to republish, to post
on servers or to redistribute to lists, requires prior specific permission and/or a     probabilities and small queues, unlike previous schemes that don't
fee.                                                                                    consider congestion information.
SIGCOMM'08, August 1722, 2008, Seattle, Washington, USA.                                1
                                                                                           A symbol is a small sequence of bits (typically a few bytes) that the code treats as a
Copyright 2008 ACM 978-1-60558-175-0/08/08 . . . $5.00.
                                                                                      single value.
   MIXIT synthesizes ideas developed in previous work, in particular
opportunistic routing (ExOR [1] and MORE [2]) and partial packet                       S           R1           R2          R3           D
recovery [8]. The key to this synthesis is its symbol-level network
                                                                                                    P           P           P             P
code. The result is a scheme that can perform much better than
packet-level opportunistic routing, which cannot benefit from partial
receptions. For example, these schemes often capitalize on sporadic          Figure 1: Example of opportunistic partial receptions: The source, S,
receptions over long links, but these long links are inherently less         wants to deliver a packet to the destination, D. The figure shows the recep-
                                                                             tions after S broadcasts its packet, where dark shades refer to erroneous
reliable and likely to exhibit symbol errors. By insisting on forwarding     symbols. The best path traverses all routers R1, R2 and R3. Traditional
only fully correct packets, current opportunistic protocols miss the         routing makes R1 transmit the packet ignoring any opportunistic recep-
bulk of their opportunities, as we show in our experiments. Similarly,       tions. Packet-level opportunistic routing exploits the reception at R2 but
prior proposals for exploiting partially correct receptions, like PPR [8],   ignores that most of the symbols have made it to R3 and D. MIXIT ex-
                                                                             ploits correctly received symbols at R3 and D, benefiting from the longest
SOFT [29], and H-ARQ [16], limit themselves to a single wireless hop,        links.
trying to make that hop reliable. In contrast, we advocate jettisoning
reliable link-layer error detection and recovery altogether in wireless      it from achieving high concurrency. MIXIT's network code also builds
mesh networks.                                                               on recent advances in extending network coding to scenarios with
   We evaluate MIXIT using our software radio implementation on              errors and adversaries [7, 12]. In contrast to all these schemes, MIXIT
a 25-node testbed running the Zigbee (802.15.4) protocol. The main           only codes over symbols above a certain confidence threshold, while
experimental results are as follows:                                         using coding coefficients that reduce overhead.
                                                                                 MIXIT also builds on prior work on "soft information", whose
 MIXIT achieves a 2.8 gain over MORE, a state-of-the-art packet-           benefits are well known [25, 4, 27]. Soft information refers to the
  based opportunistic routing protocol under moderate load. The              confidence values computed in some physical layers when it decodes
  gain over traditional routing is even higher, 3.9 better aggregate        symbols. Recent work [8] has developed the SoftPHY interface to
  end-to-end throughput. At lighter loads the corresponding gains are        expose this information to higher layers in a PHY-independent manner
  2.1 and 2.9.                                                             by annotating bits with additional hints. Thus far, the use of these
                                                                             hints at higher layers has been limited to improving link reliability
 MIXIT's gains stem from two composable capabilities: symbol-               by developing better retransmission schemes [8] or to combine confi-
  level opportunistic routing, and higher concurrency, which we find         dence values over a wired network to reconstruct correct packets from
  have a multiplicative effect. For example, separately, they improve        erroneous receptions [29]. In contrast, MIXIT uses SoftPHY hints in
  throughput by 1.5 and 1.4 over MORE; in concert, they lead to            a new way, eschewing link-layer reliability in favor of spatial diversity
  the 2.1 gain.                                                             to achieve high throughput and reliability.
                                                                                 MIXIT is philosophically similar to analog and physical layer net-
 Congestion-aware forwarding accounts for 30% of the throughput
                                                                             work coding [10, 22], but it operates on symbols (i.e., bits) rather
  gain at high load.
                                                                             than signals; this difference is important because making a soft digital
   MIXIT is a layered architecture that demonstrates cross-layer col-        decision at an intermediate node improves efficiency by preventing the
laborations using clean interfaces: the network code can run atop any        forwarding of grossly inaccurate information. And more importantly,
radio and PHY that provides SoftPHY hints, the system can run with           it is a simpler design that fits in well with a layered architecture, so
any MAC protocol (though ones that aggressively seek concurrency             one can use the same network layer with a variety of physical layer
perform better), and the routers are oblivious to the error-correcting       schemes and radio technologies. MIXIT uses SoftPHY to propagate
code. This modular separation of concerns eases implementation.              cross-layer information using a clean, PHY-independent interface.


2   Related Work                                                             3    Motivating Examples
The idea of relaying partially correct information has been examined         This section discusses two examples to motivate the need for mecha-
in information theory [14]. MIXIT builds on the intuition, but with two      nisms that can operate on symbols that are likely to have been received
important differences that admit a practical design. First, intermediate     correctly (i.e., on partial packets). These examples show two signif-
nodes use SoftPHY hints to "clean" the symbols before processing             icant new opportunities to improve throughput: far-reaching links
and forwarding them, rather than just receiving, combining, and for-         with high bit-error rates that allow quick jumps towards a destina-
warding information at the signal level. Second, nodes use intra-flow        tion even when they might never receive entire packets correctly, and
symbol-level network coding, which allows them to coordinate and             increased concurrency using a more aggressive MAC protocol that
collaborate without requiring finely synchronized transmissions that         induces higher bit-error rates than CSMA. The underlying theme in
many "distributed antenna" approaches entail.                                these examples is that one can improve throughput by allowing, and
   MIXIT builds on prior work on opportunistic routing [1, 2], coop-         coping with, higher link-layer error rates.
erative spatial diversity [18, 14], and wireless network coding [11].           First, consider Fig. 1, where a source, S, tries to deliver a packet
In particular, it shares the idea of intra-flow network coding with          to a destination, D, using the chain of routers R1, R2, and R3. It is
MORE [2], but with three key differences: first, MORE operates on            possible that when the source broadcasts its packet, R1 and R2 hear the
packets and cannot deal with packets with errors; second, MIXIT's            packet correctly, while R3 and D hear the packet with some bit errors.
symbol-level network code is an end-to-end rateless error correcting         Traditional routing ignores the "lucky" reception at R2 and insists on
code while MORE's network code cannot correct errors; and third,             delivering the packet on the predetermined path, i.e., it makes R1 for-
MIXIT designs a MAC which exploits the looser constraints on packet          ward the packet to R2 again. In contrast, recent opportunistic routing
delivery to significantly increase concurrent transmissions, MORE            protocols (such as ExOR) capitalize on such lucky receptions (at R2)
uses carrier sense and requires correct packet delivery which prevents       to make long jumps towards the destination, saving transmissions.
                                      R1                                       layers, but the interfaces between them, as well as the functions carried
                     Sa               Pa            Da                         out by the network layer, are quite different. The physical and link
                                                                               layers deliver all received data to the network layer, whether or not bits
                                      R2                                       are corrupted. Each packet has a MIXIT header that must be received
                                      Pa                                       correctly because it contains information about the destination and
                                                                               other meta-data; MIXIT protects the header with a separate forward
                                      R3
                                                                               error correction (FEC) code that has negligible overhead.
                                       Pb
                                                                                  Rather than describe each layer separately, we describe the functions
                     Sb                             Db
                                                                               carried out at the source, the forwarders, and the destination for any
                                      R4
                                                                               stream of packets.
                                       Pb

Figure 2: Concurrency example: The figure shows the receptions when
the two sources transmit concurrently. Without MIXIT, the two sources          4.1    The Source
Sa and Sb cannot transmit concurrently. MIXIT tolerates more bit errors
at individual nodes, and hence is more resilient to interference, increasing   The transport layer streams data to the network layer, which pre-
the number of useful concurrent transmissions.                                 processes it using an error-correcting code as described in 9. The
   By insisting on forwarding fully correct packets, however, current          network layer then divides the resulting stream into batches of K pack-
opportunistic protocols miss a large number of opportunities to save           ets and sends these batches to the destination sequentially. Whenever
transmissions and increase throughput; in particular, they don't take          the MAC permits, the network layer creates a different random linear
advantage of all the correct bits that already made it to R3 and even          combination of the K packets in the current batch and broadcasts it.
to the destination, D. Moreover, because of spatial diversity [18, 25],           MIXIT's network code operates at the granularity of symbols, which
the corrupted bits at R3 and D are likely in different positions. Thus,        we define as a group of consecutive bits of a packet. The group could
R3 has to transmit only the bits that D did not receive correctly for          be the same collection of bits which are transmitted as a single physical
the destination to get the complete packet. A scheme that can identify         layer symbol (PHY symbol) by the modulation scheme (e.g., groups of
correct symbols and forward them has the potential to drastically              4 bits in a 16-QAM scheme), or it could be larger in extent, covering
reduce the number of transmissions required to deliver a packet.               a small number of distinct PHY symbols. The jth symbol in a coded
   Next, consider an example with potential concurrency as in Fig. 2,          packet, sj , is a linear combinations of the jth symbols in the K packets,
where two senders, Sa and Sb , want to deliver a packet to their respec-       i.e., sj = i vi sji , where sji is the jth symbol in the ith packet in the
tive destinations, Da and Db . If both senders transmit concurrently, the      batch and vi is a per-packet random multiplier. We call v = (v1 , . . . , vK )
BER will be high, and no router will receive either packet correctly.          the code vector of the coded packet. Note that every symbol in the
Because current opportunistic routing protocols insist on correct and          packet created by the source has the same code vector.
complete packets, the best any MAC can do is to make these senders                The source adds a MIXIT header to the coded packet, protects it
transmit one after the other, consuming two time slots.                        using FEC, and broadcasts it. The header describes which symbols
   But interference is not a binary variable. In practice, different           were coded together. This description is easy to specify at the source
routers will experience different levels of interference; it is likely the     because all symbols in a coded packet are generated using the packet's
routers close to Sa will receive packet, Pa , with only a few errors,          code vector, v. The header also contains an ordered list of forward-
while those close to Sb will receive packet Pb , with only some errors.        ing nodes picked from its neighbors, each of which is closer to the
A scheme that can identify which symbols are correct and forward               destination according to the metric described in 7.
only those groups of bits can exploit this phenomenon to allow the
two senders to transmit concurrently and increase throughput. It can
then "funnel" the correct symbols from the routers to the destination.         4.2    The Forwarders
   MIXIT aims to realize these potential benefits in practice. It faces
the following challenges:                                                      Each node listens continuously whenever it is not transmitting, at-
                                                                               tempting to decode whatever it hears. When the PHY is able to decode
 How does a router classify which symbols in each received packet             bits, it passes them up together with SoftPHY hints that reflect its
  are likely correct and which aren't?                                         confidence in the decoded bits. The network layer gets this infor-
 Given the overlap in the correct symbols at various routers, how do          mation and uses it to classify symbols into clean and dirty ones. A
  we ensure that routers do not forward the same information, wasting          clean symbol is one that is likely to be correct, unlike a dirty one. 5
  bandwidth?                                                                   describes how the MIXIT network layer classifies symbols.
 How does a router forward traffic among its downstream nodes to                  When a node gets a packet without header errors, it checks whether
  maximize throughput and avoid creating hotspots?                             it is mentioned in the list of forwarders contained in the header. If
 When is it safe for nodes to transmit concurrently?                          so, the node checks whether the packet contains new information, i.e.,
 How do we ensure that the destination recovers a correct and com-            is "innovative" [13]. A packet is considered innovative if its code
  plete version of the source's data?                                          vector v is linearly independent of the vector of the packets the node
                                                                               has previously received from this batch. Checking for independence
   The rest of this paper presents our solutions to these problems in          is straightforward using Gaussian elimination over these short vec-
the context of the MIXIT architecture, which we describe next.                 tors [13]. The node ignores non-innovative packets, and stores the
                                                                               innovative packets it receives from the current batch, preserving the
4    MIXIT Architecture                                                        "clean" and "dirty" annotations.
                                                                                   When forwarding data, the node creates random linear combinations
MIXIT is a layered architecture for bulk transfer over static mesh net-        of the clean symbols in the packets it has heard from the same batch,
works. The layers are similar to the traditional PHY, link and network         as explained in 6, and broadcasts the resulting coded packet. It also
     SoftPHY Hint (Hamming Distance)
                                       16                                           in the specified mistake rate, we can use the above map to pick the
                                       14                                           right decision boundary to classify symbols.
                                       12                                              MIXIT uses the SoftPHY interface proposed in [8], which annotates
                                       10                                           the decoded PHY symbols with confidence values and sends them to
                                       8                                            higher layers. We also augment the interface to expose the SINR. The
                                       6
                                                                                    SINR can be estimated using standard methods like that in [10]. The
                                       4
                                                             1% Mistake Rate        map in Fig. 3 can be computed offline, since the relationship between
                                                             5% Mistake Rate        SINR, the confidence estimate, and the decision boundary is usually
                                       2                    10% Mistake Rate
                                                            15% Mistake Rate        static [17]. The MIXIT network layer uses the PHY information
                                       0
                                            2   4   6   8    10     12    14   16   to classify symbols as clean and dirty, and then performs symbol-
                                                        SINR (dB)                   level network coding over the clean symbols as described in the next
                                                                                    section.
Figure 3: Decision boundary for different mistake rates as a function of
SINR. At high SINR (> 12dB), all PHY symbols with Hamming distance
less than 16 (the maximum possible in the Zigbee physical layer), will              6     The MIXIT Network Code
satisfy the mistake rate threshold. But at intermediate SINRs (5-12 dB),
the PHY symbols have to be picked carefully depending on the mistake
rate threshold.                                                                     When the MAC permits, the node may forward a coded packet. The
                                                                                    symbols in a coded packet are linear combinations of the clean symbols
decides how much each neighbor should forward to balance load and                   received in packets from the same batch. To see how the coding works
maximize throughput, as described in 7.                                            let us look at an example.
   Any MAC protocol may be used in MIXIT, but the scheme de-
scribed in 8.1 achieves higher concurrency than standard CSMA                      6.1    MIXIT in Action
because it takes advantage of MIXIT's ability to cope with much
higher error rates than previous routing protocols.                                 Consider the scenario in Fig. 4, where the source S wants to deliver
                                                                                    two packets, Pa and Pb , to the destination. Let the bit error rate (BER)
                                                                                    be relatively high such that when the source S broadcasts Pa and
4.3 The Destination                                                                 Pb , the nodes in the network receive some symbols in errors. The
                                                                                    network layer at each node classifies the symbols as either clean or
MIXIT provides a rateless network code. Hence, the destination
                                                                                    dirty using the SoftPHY hints as described in 5. Fig. 4 illustrates the
simply collects all the packets it can hear until it has enough infor-
                                                                                    dirty symbols using shaded cells.
mation to decode the original data as described in 9. Furthermore,
                                                                                       The objective of our symbol-level codes is to minimize the overhead
MIXIT provides flexible reliability semantics. Depending on applica-
                                                                                    required to funnel the clean symbols to their destination. Specifically,
tion requirements, the destination can decide how much information
                                                                                    most symbols are received correctly by both R1 and R2. Hence, with-
is enough. For example, if the application requires full reliability the
                                                                                    out additional measures, the routers will transmit the same symbols
destination waits until it can decode 100% of the original symbols,
                                                                                    to the destination, wasting wireless capacity. To avoid such waste,
whereas if the application requires 90% reliability, the destination
                                                                                    MIXIT makes the routers forward random linear combinations of the
can be done once it decodes 90% of the original symbols. Once the
                                                                                    clean symbols they received. Assuming ai and bi are the ith symbols
destination decodes the required original symbols, it sends a batch-ack
                                                                                    in Pa and Pb respectively, router R picks two random numbers  and
to the source. The ack is sent using reliable single path routing, and
                                                                                     , and creates a coded packet Pc , where the ith symbol, ci is computed
causes the source to move to the next batch. For the rest of the paper,
                                                                                    as follows:
we will assume that the destination wants 100% reliability.
                                                                                                    
                                                                                                     ai +  bi if ai and bi are clean symbols
                                                                                                    
                                                                                              ci =  ai             if ai is clean and bi is dirty
5 Classifying Received Symbols                                                                      
                                                                                                       bi          if ai is dirty and bi is clean.
                                                                                                    
MIXIT operates over symbols, which are groups of PHY symbols.                       If both ai and bi are dirty, no symbol is sent. Similarly, R2 generates a
A symbol is classified as clean if none of the constituent PHY sym-                 coded packet Pd by picking two random values  and  and applying
bols are erroneous with a probability higher than  . It is classified               the same logic in the above equation. Since R1 and R2 use random
dirty otherwise. We call the threshold  , the mistake rate, and it is               coefficients to produce the coded symbols, it is unlikely that they
a configurable parameter of the system. To satisfy the mistake rate                 generate duplicate symbols [5].
threshold, MIXIT's network layer picks a decision boundary on the                      When R and R broadcast their respective packets, Pc and Pd , the
soft values [8] of the PHY symbols. If all constituent PHY symbols                  destination receives corrupted versions where some symbols are in-
in our symbol have soft values below this decision boundary, then the               correct, as shown in Fig. 4. Thus the destination has four partially
symbol is classified as clean, else it is dirty. The decision boundary              corrupted receptions: Pa and Pb , directly overheard from the source,
depends on the mistake rate as well as the channel SINR [29, 25].                   contain many erroneous symbols; and Pc and Pd , which contain a few
   Fig. 3 supports this argument. The figure is generated using a GNU               erroneous symbols. For each symbol position i, the destination needs
software radio implementation of the Zigbee protocol (see 10). The                 to decode two original symbols ai and bi . As long as the destination
figure plots the decision boundary on soft values of PHY symbols for                receives two uncorrupted independent symbols in location i, it will
varying SINR at different mistake rates of 1%, 5%, 10% and 15%.                     be able to properly decode [5]. For example, consider the symbol
Clearly the boundary depends both on the mistake rate as well as the                position i = 2, the destination has received:
SINR. The SINR measures the channel noise and interference, and
hence reflects how much we should trust the channel to preserve the                                          c2   =     a2 +  b2
correlation between transmitted and received signals [29]. Factoring                                         d2   =     a2 .
Download Link:
Share Link: Forum Link:

More on Computer & Internet

  • Picture: Name: Period GL UNIT 5: SIMILARITY

    Name: Period GL UNIT 5: SIMILARITY

    File Size: 648.11 KB, Pages: 15, Views: 294,540 views

    Name: Period GL U N IT 5 : S IM IL A R I T Y I can define, identify and illustrate the following terms: Similar Cross products Scale Factor SAS ~ Similar Polygons Similarity Ratio Indirect measurement Ratio Similarity Statement AA ~ Proportion Geometric …
  • Picture: Medical Office Communication - Coursewareobjects.com

    Medical Office Communication – Coursewareobjects.com

    File Size: 6,159.55 KB, Pages: 40, Views: 296,408 views

    Medical Office 26 Communication http://evolve.elsevier.com/klieger/medicalassisting The daily functioning of a medical practice relies on good communication skills. As you have learned in previous chapters, effective communication involves excellent skills not only in speaking and listening but also in conveying nonverbal and written messages. Medical assistants …
  • Picture: State Income Tax Return Amendment Form provided by

    State Income Tax Return Amendment Form provided by

    File Size: 2,802.37 KB, Pages: 8, Views: 262,273 views

    State Income Tax Return Amendment Form provided by taxamendment.com You can download this form to file a state income tax amendment. For details on how to file or efile the amendment please check the California tax return amendment page. You can also get your tax …
  • Picture: OPEN CHANNEL HYDRAULICS AKAN SOLUTION MANUAL

    OPEN CHANNEL HYDRAULICS AKAN SOLUTION MANUAL

    File Size: 0.00 KB, Pages: 5, Views: 27,694 views

    OPEN CHANNEL HYDRAULICS AKAN SOLUTION MANUAL STARTUP HANDBOOK FEBRUARY 18, 2015 Open Channel Hydraulics Akan Solution Manual Startup Handbook OPEN CHANNEL HYDRAULICS AKAN SOLUTION MANUAL DOWNLOAD: OPEN CHANNEL HYDRAULICS AKAN SOLUTION MANUAL Getting Open Channel Hydraulics Akan Solution Manual is easy and simple. Mostly you …
  • Picture: Lab 9: Respiratory Physiology - College of Charleston

    Lab 9: Respiratory Physiology – College of Charleston

    File Size: 365.27 KB, Pages: 8, Views: 19,975 views

    Lab 8 Respiratory Physiology Laboratory 8 Respiratory Physiology The primary function of the respiratory system is to exchange oxygen and carbon dioxide between air and blood. This function sustains metabolism (via increasing blood oxygen and releasing blood carbon dioxide) and regulates blood pH. To completely …

Leave a Reply

Your email address will not be published. Required fields are marked *